From d71376d60fca86aa025800695640dfb5dfbfeca2 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Wed, 8 Jan 2020 15:27:31 -0500 Subject: [PATCH] Bug 24380 - Backdated returns do not update fines unless CalculateFinesOnReturn is enabled In Koha 18.11 backdating a return triggered a recalculation of the fine. This was removed in bug 14591, and I believe it was in error. The bug report itself has no justification for the change in behavior. Test Plan: 1) Disable CalculateFinesOnReturn 2) Backdate an overdue with fines, note the fine does not change 3) Apply this patch 4) Repeat step 2 5) The fine should be updated! Signed-off-by: Kelly McElligott --- C4/Circulation.pm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/C4/Circulation.pm b/C4/Circulation.pm index 860d965cf1..b6a66ec9f1 100644 --- a/C4/Circulation.pm +++ b/C4/Circulation.pm @@ -1858,6 +1858,7 @@ sub AddReturn { undef $branch; } $branch = C4::Context->userenv->{'branch'} unless $branch; # we trust userenv to be a safe fallback/default + my $return_date_specified = !!$return_date; $return_date //= dt_from_string(); my $messages; my $patron; @@ -1975,7 +1976,7 @@ sub AddReturn { MarkIssueReturned( $borrowernumber, $item->itemnumber, $return_date, $patron->privacy ); }; unless ( $@ ) { - if ( C4::Context->preference('CalculateFinesOnReturn') && !$item->itemlost ) { + if ( ( $return_date_specified || C4::Context->preference('CalculateFinesOnReturn') ) && !$item->itemlost ) { _CalculateAndUpdateFine( { issue => $issue, item => $item_unblessed, borrower => $patron_unblessed, return_date => $return_date } ); } } else { -- 2.21.1 (Apple Git-122.3)