use strict;
#use warnings; FIXME - Bug 2505
-use CGI;
+use CGI qw ( -utf8 );
use C4::Auth;
use C4::Koha;
use C4::Letters;
use C4::Branch; # GetBranches
use Koha::DateUtils;
+use Koha::Borrower::Debarments qw(IsDebarred);
use constant ATTRIBUTE_SHOW_BARCODE => 'SHOW_BCODE';
my ( $template, $borrowernumber, $cookie ) = get_template_and_user(
{
- template_name => "opac-user.tmpl",
+ template_name => "opac-user.tt",
query => $query,
type => "opac",
authnotrequired => 0,
}
);
+my %renewed = map { $_ => 1 } split( ':', $query->param('renewed') );
+
my $show_priority;
for ( C4::Context->preference("OPACShowHoldQueueDetails") ) {
m/priority/ and $show_priority = 1;
}
+
my $patronupdate = $query->param('patronupdate');
my $canrenew = 1;
+$template->param( shibbolethAuthentication => C4::Context->config('useshibboleth') );
+
# get borrower information ....
my ( $borr ) = GetMemberDetails( $borrowernumber );
$borr->{'ethnicity'} = fixEthnicity( $borr->{'ethnicity'} );
-my $debar = $borr->{'debarred'};
+my $debar = IsDebarred($borrowernumber);
my $userdebarred;
if ($debar) {
$bordat[0] = $borr;
# Warningdate is the date that the warning starts appearing
-if ( $borr->{dateexpiry} && Date_to_Days( $today_year, $today_month, $today_day ) > Date_to_Days( $warning_year, $warning_month, $warning_day ) ) {
- $borr->{'warnexpired'} = 1;
-}
-elsif ( $borr->{dateexpiry} && C4::Context->preference('NotifyBorrowerDeparture') &&
- Date_to_Days(Add_Delta_Days($warning_year, $warning_month, $warning_day,- C4::Context->preference('NotifyBorrowerDeparture'))) <
- Date_to_Days( $today_year, $today_month, $today_day ) ) {
+if ( $borr->{'dateexpiry'} && C4::Context->preference('NotifyBorrowerDeparture') ) {
+ my $days_to_expiry = Date_to_Days( $warning_year, $warning_month, $warning_day ) - Date_to_Days( $today_year, $today_month, $today_day );
+ if ( $days_to_expiry < 0 ) {
+ #borrower card has expired, warn the borrower
+ $borr->{'warnexpired'} = $borr->{'dateexpiry'};
+ } elsif ( $days_to_expiry < C4::Context->preference('NotifyBorrowerDeparture') ) {
# borrower card soon to expire, warn the borrower
$borr->{'warndeparture'} = $borr->{dateexpiry};
if (C4::Context->preference('ReturnBeforeExpiry')){
$borr->{'returnbeforeexpiry'} = 1;
}
+ }
}
+# pass on any renew errors to the template for displaying
+my $renew_error = $query->param('renew_error');
$template->param( BORROWER_INFO => \@bordat,
borrowernumber => $borrowernumber,
OPACMySummaryHTML => (C4::Context->preference("OPACMySummaryHTML")) ? 1 : 0,
surname => $borr->{surname},
showname => $borr->{showname},
+ RENEW_ERROR => $renew_error,
+ borrower => $borr,
);
#get issued items ....
$issue->{'status'} = $status;
}
+ $issue->{'renewed'} = $renewed{ $issue->{'itemnumber'} };
+
if ($renewerror) {
- $issue->{'too_many'} = 1 if $renewerror eq 'too_many';
- $issue->{'on_reserve'} = 1 if $renewerror eq 'on_reserve';
+ $issue->{'too_many'} = 1 if $renewerror eq 'too_many';
+ $issue->{'on_reserve'} = 1 if $renewerror eq 'on_reserve';
+ $issue->{'auto_renew'} = 1 if $renewerror eq 'auto_renew';
+ $issue->{'auto_too_soon'} = 1 if $renewerror eq 'auto_too_soon';
if ( $renewerror eq 'too_soon' ) {
$issue->{'too_soon'} = 1;
$res->{'branch'} = $branches->{ $res->{'branchcode'} }->{'branchname'};
my $biblioData = GetBiblioData($res->{'biblionumber'});
$res->{'reserves_title'} = $biblioData->{'title'};
+ $res->{'author'} = $biblioData->{'author'};
+
if ($show_priority) {
$res->{'priority'} ||= '';
}