From db8c3581d41b3757a38aff565f851102015dbdbc Mon Sep 17 00:00:00 2001 From: Alex Arnaud Date: Mon, 4 Apr 2011 16:58:45 +0200 Subject: [PATCH] Bug #6049 - Add a filter by date in overdue.pl --- circ/overdue.pl | 12 ++++++- .../prog/en/modules/circ/overdue.tmpl | 30 ++++++++++++++++++++ 2 files changed, 40 insertions(+), 2 deletions(-) diff --git a/circ/overdue.pl b/circ/overdue.pl index 3510a2b..94bd0f8 100755 --- a/circ/overdue.pl +++ b/circ/overdue.pl @@ -27,7 +27,7 @@ use CGI qw(-oldstyle_urls); use C4::Auth; use C4::Branch; use C4::Debug; -use C4::Dates qw/format_date/; +use C4::Dates qw/format_date format_date_in_iso/; use Date::Calc qw/Today/; use Text::CSV_XS; @@ -40,6 +40,8 @@ my $itemtypefilter = $input->param('itemtype') || ''; my $borflagsfilter = $input->param('borflag') || ''; my $branchfilter = $input->param('branch') || ''; my $op = $input->param('op') || ''; +my $dateduefrom = format_date_in_iso($input->param( 'dateduefrom' )) || ''; +my $datedueto = format_date_in_iso($input->param( 'datedueto' )) || ''; my $isfiltered = $op =~ /apply/i && $op =~ /filter/i; my $noreport = C4::Context->preference('FilterBeforeOverdueReport') && ! $isfiltered && $op ne "csv"; @@ -209,7 +211,11 @@ $template->param( patron_attr_filter_loop => \@patron_attr_filter_loop, borname => $bornamefilter, order => $order, - showall => $showall); + showall => $showall, + DHTMLcalendar_dateformat => C4::Dates->DHTMLcalendar(), + dateduefrom => $input->param( 'dateduefrom' ) || '', + datedueto => $input->param( 'datedueto' ) || '', +); if ($noreport) { # la de dah ... page comes up presto-quicko @@ -254,6 +260,8 @@ if ($noreport) { $strsth.=" AND biblioitems.itemtype = '" . $itemtypefilter . "' " if $itemtypefilter; $strsth.=" AND borrowers.flags = '" . $borflagsfilter . "' " if $borflagsfilter; $strsth.=" AND borrowers.branchcode = '" . $branchfilter . "' " if $branchfilter; + $strsth.=" AND date_due < '" . $datedueto . "' " if $datedueto; + $strsth.=" AND date_due > '" . $dateduefrom . "' " if $dateduefrom; # restrict patrons (borrowers) to those matching the patron attribute filter(s), if any my $bnlist = $have_pattr_filter_data ? join(',',keys %borrowernumber_to_attributes) : ''; $strsth =~ s/WHERE 1=1/WHERE 1=1 AND borrowers.borrowernumber IN ($bnlist)/ if $bnlist; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/overdue.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/overdue.tmpl index 9682fb1..c1f2053 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/overdue.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/overdue.tmpl @@ -69,6 +69,7 @@ + @@ -137,6 +138,35 @@

Filter On:

    +
  1. Date due: + + " /> + + + + " /> + +
  2. " />