Bug 9417 - Allow number of results per page to be selectable for guided reports
[koha.git] / reports / guided_reports.pl
index 631e056..23d85a9 100755 (executable)
@@ -523,7 +523,7 @@ elsif ( $phase eq 'Save Report' ) {
 
 elsif ($phase eq 'Run this report'){
     # execute a saved report
-    my $limit      = 20; # page size. # TODO: move to DB or syspref?
+    my $limit      = $input->param('limit') || 20;
     my $offset     = 0;
     my $report_id  = $input->param('reports');
     my @sql_params = $input->param('sql_params');
@@ -532,6 +532,11 @@ elsif ($phase eq 'Run this report'){
         $offset = ($input->param('page') - 1) * $limit;
     }
 
+    $template->param(
+        'limit'   => $limit,
+        'report_id' => $report_id,
+    );
+
     my ( $sql, $type, $name, $notes );
     if (my $report = get_saved_report($report_id)) {
         $sql   = $report->{savedsql};
@@ -654,7 +659,7 @@ elsif ($phase eq 'Run this report'){
             }
 
             my $totpages = int($total/$limit) + (($total % $limit) > 0 ? 1 : 0);
-            my $url = "/cgi-bin/koha/reports/guided_reports.pl?reports=$report_id&phase=Run%20this%20report";
+            my $url = "/cgi-bin/koha/reports/guided_reports.pl?reports=$report_id&phase=Run%20this%20report&limit=$limit";
             if (@sql_params) {
                 $url = join('&sql_params=', $url, map { URI::Escape::uri_escape($_) } @sql_params);
             }