Commit d0cb2945 authored by joubu's avatar joubu

Bug 15184: Prepare the ground - Move funds and sort fields autoupdate

We are going to reuse the same logic: when a fund is selected the
statistic values are automatically updated.
Let move it to make it reusable more easily and isolate the code.

Sponsored-by: BULAC - http://www.bulac.fr/Signed-off-by: Josef Moravec's avatarJosef Moravec <josef.moravec@gmail.com>
parent 5c51984a
...@@ -429,6 +429,7 @@ ...@@ -429,6 +429,7 @@
[% INCLUDE 'datatables.inc' %] [% INCLUDE 'datatables.inc' %]
[% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") | $raw %] [% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") | $raw %]
[% Asset.js("js/acq.js") | $raw %] [% Asset.js("js/acq.js") | $raw %]
[% Asset.js("js/funds_sorts.js") | $raw %]
<script type="text/JavaScript"> <script type="text/JavaScript">
$(document).ready(function() { $(document).ready(function() {
$("#files").dataTable($.extend(true, {}, dataTablesDefaults, { $("#files").dataTable($.extend(true, {}, dataTablesDefaults, {
...@@ -441,70 +442,6 @@ ...@@ -441,70 +442,6 @@
"aaSorting": [] "aaSorting": []
} ) ); } ) );
// keep copy of the inactive budgets
disabledBudgetsCopy = $("select[name='all_budget_id']").html();
$("select[name='all_budget_id'] .b_inactive").remove();
$("select[name='budget_id'] .b_inactive").remove();
$("#showallbudgets").click(function() {
if ($(this).is(":checked")) {
$("select[name='budget_id']").html(disabledBudgetsCopy)
}
else {
$("select[name='budget_id'] .b_inactive").remove();
}
});
$("#all_showallbudgets").click(function() {
if ($(this).is(":checked")) {
$("select[name='all_budget_id']").html(disabledBudgetsCopy);
}
else {
$("select[name='all_budget_id'] .b_inactive").remove();
}
});
$("select[name='budget_id']").change(function(){
var sort1_authcat = $(this).find("option:selected").attr('data-sort1-authcat');
var sort2_authcat = $(this).find("option:selected").attr('data-sort2-authcat');
var destination_sort1 = $(this).parents('fieldset').find('li.sort1').find('input[name="sort1"]');
var sort1 = $(destination_sort1).val() || "";
if ( destination_sort1.length < 1 ) {
destination_sort1 = $(this).parents('fieldset').find('li.sort1 > select[name="sort1"]');
}
var destination_sort2 = $(this).parents('fieldset').find('li.sort2').find('input[name="sort2"]');
var sort2 = $(destination_sort2).val() || "";
if ( destination_sort2.length < 1 ) {
destination_sort2 = $(this).parents('fieldset').find('li.sort2').find('select[name="sort2"]');
}
getAuthValueDropbox( 'sort1', sort1_authcat, destination_sort1, sort1 );
getAuthValueDropbox( 'sort2', sort2_authcat, destination_sort2, sort2 );
} );
$("select[name='budget_id']").change();
$("select[name='all_budget_id']").change(function(){
var sort1_authcat = $(this).find("option:selected").attr('data-sort1-authcat');
var sort2_authcat = $(this).find("option:selected").attr('data-sort2-authcat');
var destination_sort1 = $(this).parent().siblings('li').find('input[name="all_sort1"]');
if ( destination_sort1.length < 1 ) {
destination_sort1 = $(this).parent().siblings('li').find('select[name="all_sort1"]');
}
var destination_sort2 = $(this).parent().siblings('li').find('input[name="all_sort2"]');
if ( destination_sort2.length < 1 ) {
destination_sort2 = $(this).parent().siblings('li').find('select[name="all_sort2"]');
}
getAuthValueDropbox( 'sort1', sort1_authcat, destination_sort1 );
getAuthValueDropbox( 'sort2', sort2_authcat, destination_sort2 );
$(this).parent().siblings('li').find('select[name="sort1"]').attr('name', 'all_sort1');
$(this).parent().siblings('li').find('input[name="sort1"]').attr('name', 'all_sort1');
$(this).parent().siblings('li').find('select[name="sort2"]').attr('name', 'all_sort2');
$(this).parent().siblings('li').find('input[name="sort2"]').attr('name', 'all_sort2');
} );
$("select[name='all_budget_id']").change();
$("#records_to_import fieldset.rows div").hide(); $("#records_to_import fieldset.rows div").hide();
$('input:checkbox[name="import_record_id"]').change(function(){ $('input:checkbox[name="import_record_id"]').change(function(){
var container = $(this).parents("fieldset"); var container = $(this).parents("fieldset");
......
/* getAuthValueDropbox from js/acq.js is needed */
$(document).ready(function() {
// keep copy of the inactive budgets
disabledBudgetsCopy = $("select[name='all_budget_id']").html();
$("select[name='all_budget_id'] .b_inactive").remove();
$("select[name='budget_id'] .b_inactive").remove();
$("#showallbudgets").click(function() {
if ($(this).is(":checked")) {
$("select[name='budget_id']").html(disabledBudgetsCopy)
}
else {
$("select[name='budget_id'] .b_inactive").remove();
}
});
$("#all_showallbudgets").click(function() {
if ($(this).is(":checked")) {
$("select[name='all_budget_id']").html(disabledBudgetsCopy);
}
else {
$("select[name='all_budget_id'] .b_inactive").remove();
}
});
$("select[name='budget_id']").change(function(){
var sort1_authcat = $(this).find("option:selected").attr('data-sort1-authcat');
var sort2_authcat = $(this).find("option:selected").attr('data-sort2-authcat');
var destination_sort1 = $(this).parents('fieldset').find('li.sort1').find('input[name="sort1"]');
var sort1 = $(destination_sort1).val() || "";
if ( destination_sort1.length < 1 ) {
destination_sort1 = $(this).parents('fieldset').find('li.sort1 > select[name="sort1"]');
}
var destination_sort2 = $(this).parents('fieldset').find('li.sort2').find('input[name="sort2"]');
var sort2 = $(destination_sort2).val() || "";
if ( destination_sort2.length < 1 ) {
destination_sort2 = $(this).parents('fieldset').find('li.sort2').find('select[name="sort2"]');
}
getAuthValueDropbox( 'sort1', sort1_authcat, destination_sort1, sort1 );
getAuthValueDropbox( 'sort2', sort2_authcat, destination_sort2, sort2 );
} );
$("select[name='budget_id']").change();
$("select[name='all_budget_id']").change(function(){
var sort1_authcat = $(this).find("option:selected").attr('data-sort1-authcat');
var sort2_authcat = $(this).find("option:selected").attr('data-sort2-authcat');
var destination_sort1 = $(this).parent().siblings('li').find('input[name="all_sort1"]');
if ( destination_sort1.length < 1 ) {
destination_sort1 = $(this).parent().siblings('li').find('select[name="all_sort1"]');
}
var destination_sort2 = $(this).parent().siblings('li').find('input[name="all_sort2"]');
if ( destination_sort2.length < 1 ) {
destination_sort2 = $(this).parent().siblings('li').find('select[name="all_sort2"]');
}
getAuthValueDropbox( 'sort1', sort1_authcat, destination_sort1 );
getAuthValueDropbox( 'sort2', sort2_authcat, destination_sort2 );
$(this).parent().siblings('li').find('select[name="sort1"]').attr('name', 'all_sort1');
$(this).parent().siblings('li').find('input[name="sort1"]').attr('name', 'all_sort1');
$(this).parent().siblings('li').find('select[name="sort2"]').attr('name', 'all_sort2');
$(this).parent().siblings('li').find('input[name="sort2"]').attr('name', 'all_sort2');
} );
$("select[name='all_budget_id']").change();
});
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment