PHRAS-2563_subdef-task-alldb_4.1

subdef task : if the "all" databox is checked, the task runs on every dbox (even the new ones)
also : changed the task-manager notification timeout to 1s to be more responsive.
This commit is contained in:
Jean-Yves Gaulier
2019-05-14 16:17:00 +02:00
parent 8063436167
commit cf542587a0
4 changed files with 24 additions and 4 deletions

View File

@@ -4,9 +4,12 @@
<div class="control-group">
<label class="control-label"> {{ 'Databox' | trans }}</label>
<div class="controls">
<label class="checkbox inline">
<input class="subdef_task_sbas" type="checkbox" name="sbas[]" value="0"> {{ 'All' | trans }}
</label>
{% for databox in app.getApplicationBox().get_databoxes() %}
<label class="checkbox inline">
<input type="checkbox" name="sbas[]" value="{{ databox.get_sbas_id() }}"> {{ databox.get_viewname() }}
<input class="subdef_task_sbas" type="checkbox" name="sbas[]" value="{{ databox.get_sbas_id() }}"> {{ databox.get_viewname() }}
({{ databox.get_sbas_id() }})
</label>
{% endfor %}
@@ -68,6 +71,10 @@
{% block javascript %}
<script type="text/javascript">
$(".subdef_task_sbas").change(function (e) {
checkSbas();
});
function minmax(v, _min, _max)
{
if(isNaN(v) || v < _min)
@@ -80,6 +87,16 @@
}
return v;
}
function checkSbas()
{
var alldb = $(".subdef_task_sbas[value=0]").prop('checked');
if(alldb) {
$(".subdef_task_sbas[value!=0]").prop('checked', true).attr('disabled', true);
}
else {
$(".subdef_task_sbas[value!=0]").attr('disabled', false);
}
}
function taskFillGraphic(xml)
{
if (xml) {
@@ -98,12 +115,14 @@
gform.flush.value = minmax(parseInt(xml.find("flush").text()), 1, 100);
gform.maxrecs.value = minmax(parseInt(xml.find("maxrecs").text()), 10, 100);
gform.maxmegs.value = minmax(parseInt(xml.find("maxmegs").text()), 64, 512);
var $databoxes = $(gform).find("input[name='sbas[]']");
for(i=0; i < $databoxes.length; i++) {
var sbid = $($databoxes[i]).attr('value');
$($databoxes[i]).prop('checked', (xml.find("sbas").filter(function(){return $(this).text()==sbid}).length > 0));
}
checkSbas();
}
}
</script>