From c3bd70316c1ff971e480fa2d9dfa563c67775534 Mon Sep 17 00:00:00 2001 From: David Cook Date: Mon, 5 Jan 2026 04:10:15 +0000 Subject: [PATCH] Bug 41518: Only show autorenewal text if autorenewal allowed This change makes the "Scheduled for automatic renewal" text appear in the staff interface and OPAC only if both the issue has auto_renew and the borrower has autorenew_checkouts set. These are the criteria that automatic_renewals.pl uses for processing automatic renewals. Test plan: 0. Apply the patch 1. koha-plack --restart kohadev 2. Checkout an item as an automatic renewal (ie either set it as Automatic renewal using the checkout option or have the circ and fines rules set to use Automatic renewals) 3. View the checkout in both the staff interface and the OPAC 4. Note that they both show "Scheduled for automatic renewal" or "This item is scheduled for auto renewal" for the OPAC 5. In the patron record change "Allow auto-renewal of items" from "Yes" to "No" 6. Note that the text talking about the item being scheduled for automatic renewal no longer displays Bonus points: 1. Run 'perl ./misc/cronjobs/automatic_renewals.pl -v' 2. Note that the automatic renewal doesn't show when "Allow auto-renewal of items" is set to "No" but it does show when it's set to "Yes" Signed-off-by: David Nind Signed-off-by: Emily Lamancusa Signed-off-by: Laura Escamilla (cherry picked from commit 99e9bcf25e1a29fdab5e50af3cb6de80222964de) Signed-off-by: Baptiste Wojtkowski --- koha-tmpl/intranet-tmpl/prog/js/checkouts.js | 2 +- koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt | 2 +- svc/checkouts | 2 ++ 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js b/koha-tmpl/intranet-tmpl/prog/js/checkouts.js index 3dec4555e3..e9780626be 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/checkouts.js +++ b/koha-tmpl/intranet-tmpl/prog/js/checkouts.js @@ -369,7 +369,7 @@ function LoadIssuesTable() { } content += ")"; } - if(oObj.auto_renew){ + if (oObj.auto_renew && oObj.auto_renew_patron) { content += "("; content += __("Scheduled for automatic renewal"); content += ")"; diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt index 7dbb08f7a4..f6b12e9202 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-user.tt @@ -504,7 +504,7 @@ [% ELSIF ( ISSUE.item_denied_renewal ) %] Renewal not allowed [% END %] - [% IF ( ISSUE.auto_renew || ISSUE.auto_too_soon ) %] + [% IF ( ( ISSUE.auto_renew || ISSUE.auto_too_soon ) && borrower.autorenew_checkouts ) %]
This item is scheduled for auto renewal. [% END %] diff --git a/svc/checkouts b/svc/checkouts index dd8d1d0f82..bddaa2e22f 100755 --- a/svc/checkouts +++ b/svc/checkouts @@ -106,6 +106,7 @@ my $sql = ' borrowers.surname, borrowers.firstname, borrowers.cardnumber, + borrowers.autorenew_checkouts, items.itemlost, items.damaged, @@ -276,6 +277,7 @@ while ( my $c = $sth->fetchrow_hashref() ) { date_due_today => $c->{date_due_today} ? JSON::true : JSON::false, timestamp => $c->{timestamp}, auto_renew => $c->{auto_renew}, + auto_renew_patron => $c->{autorenew_checkouts}, onsite_checkout => $c->{onsite_checkout}, enumchron => $c->{enumchron}, renewals_count => $renewals_count,