http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=7435 Fred P <fred.pierre@smfpl.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fred.pierre@smfpl.org --- Comment #4 from Fred P <fred.pierre@smfpl.org> 2012-01-16 17:04:40 UTC --- Displaying the inactive funds in red interferes with the display:none setting. The problem can be solved by option-grouping the selection list. A secondary problem also exists that the Show All checkbox can display the full list, but not un-display it. The javascript is buggy and prevents re-hiding the inactive items. Here is an effective patch: ----------------------------------------------------------- File: neworderempty.pl Near Line 263: ----------------------------------------------------------- my $budget_loop = []; my $inactive_budget_loop = []; my $budgets = GetBudgetHierarchy(q{},$borrower->{branchcode},$borrower->{borrowernumber}); foreach my $r (@{$budgets}) { if (!defined $r->{budget_amount} || $r->{budget_amount} == 0) { next; } if($r->{budget_period_active}){ push @{$budget_loop}, { b_id => $r->{budget_id}, b_txt => $r->{budget_name}, b_active => $r->{budget_period_active}, b_sel => ( $r->{budget_id} == $budget_id ) ? 1 : 0, }; }else{ push @{$inactive_budget_loop}, { b_id => $r->{budget_id}, b_txt => $r->{budget_name}, b_active => $r->{budget_period_active}, b_sel => ( $r->{budget_id} == $budget_id ) ? 1 : 0, }; } } if ($close) { $budget_id = $data->{'budget_id'}; $budget_name = $budget->{'budget_name'}; } ----------------------------------------------------------- Near Line 392: ----------------------------------------------------------- budget_loop => $budget_loop, inactive_budget_loop => $inactive_budget_loop, isbn => $data->{'isbn'}, ----------------------------------------------------------- THAT FIXES THE JAVASCRIPT for the Checkbox "Show All" Next we create the Option Groups in the Select Drop-Down: ----------------------------------------------------------- File: neworderempty.tt Near Line 95: ----------------------------------------------------------- $('#showallbudgets').click(function() { if ( $('#inactive_funds .b_inactive').is(":visible") ) { $('#inactive_funds').attr("disabled","disabled"); $('#inactive_funds .b_inactive').hide(); } else { $('#inactive_funds').attr("disabled",""); $('#inactive_funds .b_inactive').show(); } }); ----------------------------------------------------------- Near Line 333: ----------------------------------------------------------- <label for="budget_id">Fund: </label> <select id="budget_id" onchange="fetchSortDropbox(this.form)" size="1" name="budget_id"> <optgroup label="active funds"> [% IF !(budget_id) %]<option value='0' >Select Fund</option> [% END %] [% FOREACH budget_loo IN budget_loop %] [% IF ( budget_loo.b_sel ) %] <option value="[% budget_loo.b_id %]" selected="selected">[% budget_loo.b_txt %]</option> [% ELSE %] [% IF ( budget_loo.b_active ) %]<option value="[% budget_loo.b_id %]">[% budget_loo.b_txt %]</option> [% ELSE %]<option value="[% budget_loo.b_id %]" class="b_inactive" style="display : none; color:red;" >[% budget_loo.b_txt %]</option> [% END %] [% END %] [% END %] </optgroup> <optgroup label="inactive funds" id="inactive_funds" disabled="disabled"> [% FOREACH inactive_budget_loo IN inactive_budget_loop %] [% IF ( inactive_budget_loo.b_sel ) %] <option value="[% inactive_budget_loo.b_id %]" selected="selected">[% inactive_budget_loo.b_txt %]</option> [% ELSE %] [% IF ( inactive_budget_loo.b_active ) %]<option value="[% inactive_budget_loo.b_id %]">[% inactive_budget_loo.b_txt %]</option> [% ELSE %]<option value="[% inactive_budget_loo.b_id %]" class="b_inactive" style="display : none;" >[% inactive_budget_loo.b_txt %]</option> [% END %] [% END %] [% END %] </optgroup> </select> ---------------------------------------------------------------- On my system, Chrome displays only two lines of the drop-down, both before and after the fix, so I use Firefox for testing this. -- Configure bugmail: http://bugs.koha-community.org/bugzilla3/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching all bug changes.