From ebb7aa17d15b9c47b1aa56893a4172d982750de8 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Thu, 7 Jul 2022 15:14:59 -0400 Subject: [PATCH] Bug 31120 - Items will renew for zero ( 0 ) days if renewalperiod is blank/empty value If the rule renewalperiod is the blank empty string instead of being null/undefined or non-existant, Koha will interpret the renewal period as being zero days instead of falling back to the issuelength rule. It makes sense to me that a literal 0 here should make it renew for zero days even though that is nonsensical. Test Plan: 1) Delete all your rules 2) Create an all/all/all rules with an empty string for renewal base period 3) Note that renewing an item does nothing 4) Apply this patch 5) Restart all the things! 6) Renew again 7) Note the renewal uses the issuelength rule as intended Signed-off-by: Sally --- C4/Circulation.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/C4/Circulation.pm b/C4/Circulation.pm index a10503385f..732a45301b 100644 --- a/C4/Circulation.pm +++ b/C4/Circulation.pm @@ -3753,7 +3753,7 @@ sub CalcDateDue { my $loanlength = GetLoanLength( $borrower->{'categorycode'}, $itemtype, $branch ); - my $length_key = ( $isrenewal and defined $loanlength->{renewalperiod} ) + my $length_key = ( $isrenewal and defined $loanlength->{renewalperiod} and $loanlength->{renewalperiod} ne q{} ) ? qq{renewalperiod} : qq{issuelength}; -- 2.30.2