Bug 17872: Fix small error in GetBudgetHierarchy and one of its calls
authorMarcel de Rooy <m.de.rooy@rijksmuseum.nl>
Tue, 10 Jan 2017 09:03:36 +0000 (10:03 +0100)
committerKyle M Hall <kyle@bywatersolutions.com>
Thu, 13 Apr 2017 12:34:15 +0000 (08:34 -0400)
In aqbudgetperiods.pl a commented line is removed that contains a
wrong userenv hash key. Should be branch instead of branchcode.

In aqbudgets GetBudgetHierarchy is called with the same wrong userenv
hash key. Should be userenv->{branch}.
This made another bug visible: if you call GetBudgetHierarchy with a
branch and without owner, the where clause should take into account
that the branchcode can be empty (not null).

Test plan:
[1] Run Budgets.t
[2] Run aqbudgets.pl from Administration
[3] Add the show_mine=1 parameter in the URL
[4] Change owner of one of the funds and repeat step 2 and 3.

t/Budgets.t returns green. Followed test plan, works as expected.
Signed-off-by: Marc VĂ©ron <veron@veron.ch>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
C4/Budgets.pm
admin/aqbudgetperiods.pl
admin/aqbudgets.pl

index cf2939f..c68fbec 100644 (file)
@@ -511,7 +511,7 @@ sub GetBudgetHierarchy {
         }
     } else {
         if ($branchcode) {
-            push @where_strings," (budget_branchcode =? or budget_branchcode is NULL)";
+            push @where_strings," (budget_branchcode =? or budget_branchcode is NULL OR budget_branchcode='')";
             push @bind_params, $branchcode;
         }
     }
index 7ce5783..ca2171f 100755 (executable)
@@ -198,8 +198,6 @@ elsif ( $op eq 'close_form' ) {
 
     my $budgets_to_move = GetBudgetHierarchy($budget_period_id);
 
-    # C4::Context->userenv->{branchcode}, $show_mine ? $borrower_id : '')
-
     my $number_of_unreceived_orders = 0;
     for my $budget (@$budgets_to_move) {
 
index 483ff8f..97664df 100755 (executable)
@@ -237,8 +237,7 @@ if ( $op eq 'list' ) {
     );
 
     my @budgets = @{
-        GetBudgetHierarchy($$period{budget_period_id},
-            C4::Context->userenv->{branchcode}, $show_mine ? $borrower_id : '')
+        GetBudgetHierarchy( $$period{budget_period_id}, C4::Context->userenv->{branch}, ( $show_mine ? $borrower_id : 0 ))
     };
 
     my $period_total = 0;