From 3640d437985c318afacb17c608149eba31fcd856 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Tue, 13 Sep 2016 09:44:41 +0100 Subject: [PATCH] [PASSED QA] Bug 17294: Make reserves_stats.pl plack safe MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Lot of errors are raised by this script under plack because of var scope issues: Variable "$ccodes" is not available at /home/koha/src/reports/reserves_stats.pl line 337. Variable "$locations" is not available at /home/koha/src/reports/reserves_stats.pl line 338. Variable "$itemtypes" is not available at /home/koha/src/reports/reserves_stats.pl line 339. Variable "$Bsort1" is not available at /home/koha/src/reports/reserves_stats.pl line 344. Variable "$Bsort2" is not available at /home/koha/src/reports/reserves_stats.pl line 350. Variable "@patron_categories" is not available at /home/koha/src/reports/reserves_stats.pl line 356. The lazy way to fix that is that reinit them from the subroutines they are used. Test plan: Execute the report, after this patch applied you won't see the error in the log. Signed-off-by: Marc VĂ©ron Signed-off-by: Katrin Fischer --- reports/reserves_stats.pl | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/reports/reserves_stats.pl b/reports/reserves_stats.pl index a444bc5..fe1d73c 100755 --- a/reports/reserves_stats.pl +++ b/reports/reserves_stats.pl @@ -330,6 +330,12 @@ sub null_to_zzempty ($) { } sub display_value { my ( $crit, $value ) = @_; + my $ccodes = GetKohaAuthorisedValues("items.ccode"); + my $locations = GetKohaAuthorisedValues("items.location"); + my $itemtypes = GetItemTypes(); + my $authvalue = GetKohaAuthorisedValues("items.authvalue"); + my $Bsort1 = GetAuthorisedValues("Bsort1"); + my $Bsort2 = GetAuthorisedValues("Bsort2"); my $display_value = ( $crit =~ /ccode/ ) ? $ccodes->{$value} : ( $crit =~ /location/ ) ? $locations->{$value} @@ -350,6 +356,7 @@ sub display_value { } } elsif ( $crit =~ /category/ ) { + my @patron_categories = Koha::Patron::Categories->search_limited({}, {order_by => ['description']}); foreach my $patron_category ( @patron_categories ) { ( $value eq $patron_category->categorycode ) or next; $display_value = $patron_category->description and last; -- 2.7.4