@@ -, +, @@ --- C4/SIP/ILS/Transaction/Renew.pm | 1 + koha-tmpl/intranet-tmpl/prog/en/includes/strings.inc | 1 + koha-tmpl/intranet-tmpl/prog/en/modules/circ/renew.tt | 4 ++++ koha-tmpl/intranet-tmpl/prog/js/checkouts.js | 7 +++++++ koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt | 4 ++++ misc/cronjobs/automatic_renewals.pl | 3 ++- opac/opac-user.pl | 1 + 7 files changed, 20 insertions(+), 1 deletion(-) --- a/C4/SIP/ILS/Transaction/Renew.pm +++ a/C4/SIP/ILS/Transaction/Renew.pm @@ -51,6 +51,7 @@ sub do_renew_for { } else { $renewerror=~s/on_reserve/Item unavailable due to outstanding holds/; $renewerror=~s/too_many/Item has reached maximum renewals/; + $renewerror=~s/item_denied_renewal/Item renewal is not allowed/; $self->screen_msg($renewerror); $self->renewal_ok(0); } --- a/koha-tmpl/intranet-tmpl/prog/en/includes/strings.inc +++ a/koha-tmpl/intranet-tmpl/prog/en/includes/strings.inc @@ -20,6 +20,7 @@ var NOT_RENEWABLE_AUTO_TOO_LATE = _("Can no longer be auto-renewed - number of checkout days exceeded"); var NOT_RENEWABLE_AUTO_TOO_MUCH_OWEING = _("Automatic renewal failed, patron has unpaid fines"); var NOT_RENEWABLE_AUTO_RENEW = _("Scheduled for automatic renewal"); + var NOT_RENEWABLE_DENIED = _("Renewal denied by syspref"); var RENEWALS_REMAINING = _("%s of %s renewals remaining"); var HOLD_IS_SUSPENDED = _("Hold is suspended"); var UNTIL = _("until %s"); --- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/renew.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/renew.tt @@ -117,6 +117,10 @@

[% borrower.firstname %] [% borrower.surname %] ( [% borrower.cardnumber %] ) is currently restricted.

+ [% ELSIF error == "item_denied_renewal" %] + +

Item is not allowed renewal.

+ [% ELSE %] [% error %] --- a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js +++ a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js @@ -392,6 +392,13 @@ $(document).ready(function() { span_class = "renewals-allowed"; } else if ( oObj.can_renew_error == "onsite_checkout" ) { // Don't display something if it's an onsite checkout + } else if ( oObj.can_renew_error == "item_denied_renewal" ) { + content += "" + + NOT_RENEWABLE_DENIED + + ""; + + span_style = "display: none"; + span_class = "renewals-allowed"; } else { content += "" + oObj.can_renew_error --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt +++ a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt @@ -92,6 +92,8 @@ Using this account is not recommended because some parts of Koha will not functi It is too soon after the checkout date for this item to be renewed. [% ELSIF error == 'on_reserve' %] This item is on hold for another borrower. + [% ELSIF error == 'item_denied_renewal' %] + Item renewal is not allowed. [% END %] [% END %] @@ -300,6 +302,8 @@ Using this account is not recommended because some parts of Koha will not functi [% ELSIF ( ISSUE.too_soon ) %] No renewal before [% ISSUE.soonestrenewdate %] ([% ISSUE.renewsleft %] of [% ISSUE.renewsallowed %] renewals remaining) + [% ELSIF ( ISSUE.item_denied_renewal ) %] + Renewal not allowed [% END %] [% END %] --- a/misc/cronjobs/automatic_renewals.pl +++ a/misc/cronjobs/automatic_renewals.pl @@ -87,7 +87,8 @@ while ( my $auto_renew = $auto_renews->next ) { or $error eq 'overdue' or $error eq 'auto_too_late' or $error eq 'auto_too_much_oweing' - or $error eq 'auto_too_soon' ) { + or $error eq 'auto_too_soon' + or $error eq 'item_denied_renewal' ) { if ( not $auto_renew->auto_renew_error or $error ne $auto_renew->auto_renew_error ) { $auto_renew->auto_renew_error($error)->store; push @{ $report{ $auto_renew->borrowernumber } }, $auto_renew --- a/opac/opac-user.pl +++ a/opac/opac-user.pl @@ -223,6 +223,7 @@ if ($issues){ $issue->{'auto_too_soon'} = 1 if $renewerror eq 'auto_too_soon'; $issue->{'auto_too_late'} = 1 if $renewerror eq 'auto_too_late'; $issue->{'auto_too_much_oweing'} = 1 if $renewerror eq 'auto_too_much_oweing'; + $issue->{'item_denied_renewal'} = 1 if $renewerror eq 'item_denied_renewal'; if ( $renewerror eq 'too_soon' ) { $issue->{'too_soon'} = 1; --