Bug 16760: fix Circulation Statistics wizard under Plack
This patch fixes some variable scoping problems when running
the circulation statistics wizard under Plack. For example,
when using the item type as a row header, with this patch the
item type description is displayed rather than "UKNOWN VALUE".
This patch also enables warnings and fixes a couple variable
initialization issues. (Note that turning on warnings across
the board would make it easier to identify Plack variable scoping
issues, as "Variable "$foo" is not available at' errors would
be recorded in the Plack error log).
To test
-------
[1] Run the staff interface under Plack.
[2] Go to the Circulation Statistics Wizard and run a report
using item type as the row. Note that the row labels
display as "UNKNOWN VALUE" rather than the item type.
[3] Apply the patch and restart Plack.
[4] Run step #2 again; this time, the item type descriptions should
be used as the row labels.
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
parent
c7596a4894
commit
8ca55a7fb3
|
|
@ -18,7 +18,7 @@
|
|||
# along with Koha; if not, see <http://www.gnu.org/licenses>.
|
||||
|
||||
use strict;
|
||||
#use warnings; FIXME - Bug 2505
|
||||
use warnings;
|
||||
|
||||
use CGI qw ( -utf8 );
|
||||
use Date::Manip;
|
||||
|
|
@ -45,7 +45,7 @@ Plugin that shows circulation stats
|
|||
=cut
|
||||
|
||||
# my $debug = 1; # override for now.
|
||||
my $input = new CGI;
|
||||
my $input = CGI->new;
|
||||
my $fullreportname = "reports/issues_stats.tt";
|
||||
my $do_it = $input->param('do_it');
|
||||
my $line = $input->param("Line");
|
||||
|
|
@ -70,19 +70,19 @@ my ($template, $borrowernumber, $cookie) = get_template_and_user({
|
|||
flagsrequired => {reports => '*'},
|
||||
debug => 0,
|
||||
});
|
||||
our $sep = $input->param("sep");
|
||||
our $sep = $input->param("sep") // '';
|
||||
$sep = "\t" if ($sep eq 'tabulation');
|
||||
$template->param(do_it => $do_it,
|
||||
);
|
||||
|
||||
my $itemtypes = GetItemTypes();
|
||||
my $categoryloop = GetBorrowercategoryList;
|
||||
our $itemtypes = GetItemTypes();
|
||||
our $categoryloop = GetBorrowercategoryList;
|
||||
|
||||
my $ccodes = GetKohaAuthorisedValues("items.ccode");
|
||||
my $locations = GetKohaAuthorisedValues("items.location");
|
||||
our $ccodes = GetKohaAuthorisedValues("items.ccode");
|
||||
our $locations = GetKohaAuthorisedValues("items.location");
|
||||
|
||||
my $Bsort1 = GetAuthorisedValues("Bsort1");
|
||||
my $Bsort2 = GetAuthorisedValues("Bsort2");
|
||||
our $Bsort1 = GetAuthorisedValues("Bsort1");
|
||||
our $Bsort2 = GetAuthorisedValues("Bsort2");
|
||||
my ($hassort1,$hassort2);
|
||||
$hassort1=1 if $Bsort1;
|
||||
$hassort2=1 if $Bsort2;
|
||||
|
|
@ -219,8 +219,8 @@ sub calculate {
|
|||
push @loopfilter,{crit=>"Select Month",filter=>$monthsel} if ($monthsel);
|
||||
|
||||
my @linefilter;
|
||||
$debug and warn "filtres ". join "|", @filters;
|
||||
my ($colsource, $linesource);
|
||||
$debug and warn "filtres ". join "|", @$filters;
|
||||
my ($colsource, $linesource) = ('', '');
|
||||
$linefilter[1] = @$filters[1] if ($line =~ /datetime/);
|
||||
$linefilter[0] =
|
||||
( $line =~ /datetime/ ) ? @$filters[0]
|
||||
|
|
|
|||
Loading…
Reference in New Issue