From e2ff1ee816921413b78036b0e9fd859663d7449a Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Thu, 11 Apr 2013 15:46:50 -0400 Subject: [PATCH] Bug 10030 - MaxFines checks against amount, not amount outstanding Content-Type: text/plain; charset=utf-8 If a patron has over time accumulated fines greater than the amount defined in MaxFine, the patron will never get more fines even if they have previously paid off those fines. This bug was introduced by the patch for Bug 7420. Test Plan: 1) Create a patron 2) Create a fine of 10.00 for that patron 3) Pay off the fine 4) Set MaxFines to 5.00 5) Check out an item to the patron, backdate the due date so the item should generate fines. 6) Run fines.pl, observe that no fine was created 7) Apply the patch 8) Rerun fines.pl 9) Observe that the fine was created correctly Signed-off-by: Chris Cormack Signed-off-by: Marcel de Rooy --- C4/Overdues.pm | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/C4/Overdues.pm b/C4/Overdues.pm index bc1c7a7..c99a669 100644 --- a/C4/Overdues.pm +++ b/C4/Overdues.pm @@ -540,8 +540,9 @@ sub UpdateFine { next; } } - $total_amount_other += $rec->{'amount'}; + $total_amount_other += $rec->{'amountoutstanding'}; } + if (my $maxfine = C4::Context->preference('MaxFine')) { if ($total_amount_other + $amount > $maxfine) { my $new_amount = $maxfine - $total_amount_other; -- 1.7.7.6