X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=opac%2Fopac-renew.pl;h=ca58f3ded8ff56cd1312d4dd3ba74f3cdcbe7754;hb=5d6c092921919526ade501facb1220f8a108a08f;hp=c699b359dfd225e188881d6489cf6f341feea522;hpb=6eb021ab0e113e2b6b897c89475f1eadc7a2c15b;p=koha_fer diff --git a/opac/opac-renew.pl b/opac/opac-renew.pl index c699b359df..ca58f3ded8 100755 --- a/opac/opac-renew.pl +++ b/opac/opac-renew.pl @@ -27,8 +27,10 @@ use warnings; use CGI; use C4::Circulation; use C4::Auth; +use C4::Context; use C4::Items; use C4::Members; +use Date::Calc qw( Today Date_to_Days ); my $query = new CGI; my ( $template, $borrowernumber, $cookie ) = get_template_and_user( @@ -46,33 +48,43 @@ my @items = $query->param('item'); my $opacrenew = C4::Context->preference("OpacRenewalAllowed"); my $errorstring=''; -for my $itemnumber ( @items ) { - my ($status,$error) = CanBookBeRenewed( $borrowernumber, $itemnumber ); - if ( $status == 1 && $opacrenew == 1 ) { - my $renewalbranch = C4::Context->preference('OpacRenewalBranch'); - my $branchcode; - if ($renewalbranch eq 'itemhomebranch'){ - my $item = GetItem($itemnumber); - $branchcode=$item->{'homebranch'}; - } - elsif ($renewalbranch eq 'patronhomebranch'){ - my $borrower = GetMemberDetails($borrowernumber); - $branchcode = $borrower->{'branchcode'}; - } - elsif ($renewalbranch eq 'checkoutbranch'){ - my $issue = GetOpenIssue($itemnumber); - $branchcode = $issue->{'branchcode'}; - } - elsif ($renewalbranch eq 'NULL'){ - $branchcode=''; - } - else { - $branchcode='OPACRenew' - } - AddRenewal( $borrowernumber, $itemnumber, $branchcode); - } - else { - $errorstring .= $error ."|"; +my $member_details = GetMemberDetails($borrowernumber); + +if ( $member_details->{'BlockExpiredPatronOpacActions'} + && $member_details->{'is_expired'} ) +{ + $errorstring = 'card_expired'; +} +else { + for my $itemnumber (@items) { + my ( $status, $error ) = + CanBookBeRenewed( $borrowernumber, $itemnumber ); + if ( $status == 1 && $opacrenew == 1 ) { + my $renewalbranch = C4::Context->preference('OpacRenewalBranch'); + my $branchcode; + if ( $renewalbranch eq 'itemhomebranch' ) { + my $item = GetItem($itemnumber); + $branchcode = $item->{'homebranch'}; + } + elsif ( $renewalbranch eq 'patronhomebranch' ) { + my $borrower = GetMemberDetails($borrowernumber); + $branchcode = $borrower->{'branchcode'}; + } + elsif ( $renewalbranch eq 'checkoutbranch' ) { + my $issue = GetOpenIssue($itemnumber); + $branchcode = $issue->{'branchcode'}; + } + elsif ( $renewalbranch eq 'NULL' ) { + $branchcode = ''; + } + else { + $branchcode = 'OPACRenew'; + } + AddRenewal( $borrowernumber, $itemnumber, $branchcode ); + } + else { + $errorstring .= $error . "|"; + } } }