use strict;
use warnings;
+use CGI;
+use Date::Calc qw/Today Add_Delta_YM/;
+
use C4::Context;
use C4::Output;
-use CGI;
use C4::Auth;
use C4::Dates qw/format_date format_date_in_iso/;
use C4::Debug;
-use Date::Calc qw/Today Add_Delta_YM/;
+use C4::Biblio qw/GetMarcBiblio GetRecordValue GetFrameworkCode/;
my $input = new CGI;
my $order = $input->param('order') || '';
if (!defined($enddate) or $enddate !~ s/^\s*(\S+)\s*$/$1/) { # strip spaces, remove Taint
$enddate = format_date($todaysdate);
}
-if (!defined($ratio) or $ratio !~ s/^\s*(0?\.?\d+)(\.0*)?\s*$/$1/) { # strip spaces, remove Taint
+if (!defined($ratio)) {
$ratio = 3;
}
-if ($ratio == 0) {
+# Force to be a number
+$ratio += 0;
+if ($ratio <= 0) {
$ratio = 1; # prevent division by zero
}
my $thisratio = $data->{reservecount} / $data->{itemcount};
my $ratiocalc = ($thisratio / $ratio);
($thisratio / $ratio) >= 1 or next; # TODO: tighter targeting -- get ratio limit into SQL using HAVING clause
+ my $record = GetMarcBiblio($data->{biblionumber});
+ $data->{subtitle} = GetRecordValue('subtitle', $record, GetFrameworkCode($data->{biblionumber}));
push(
@reservedata,
{
priority => $data->{priority},
name => $data->{borrower},
title => $data->{title},
+ subtitle => $data->{subtitle},
author => $data->{author},
notes => $data->{notes},
itemnum => $data->{itemnumber},
to => $enddate,
ratio => $ratio,
reserveloop => \@reservedata,
- DHTMLcalendar_dateformat => C4::Dates->DHTMLcalendar(),
);
output_html_with_http_headers $input, $cookie, $template->output;