Bug 14390: [QA Follow-up] UpdateFine should be passed a hash
authorMarcel de Rooy <m.de.rooy@rijksmuseum.nl>
Fri, 19 Aug 2016 07:57:13 +0000 (09:57 +0200)
committerKyle M Hall <kyle@bywatersolutions.com>
Wed, 24 Aug 2016 16:24:20 +0000 (16:24 +0000)
Renewing an overdue would not work.
Log shows:
renew: Can't use string ("2144746608") as a HASH ref while "strict refs" in use at C4/Overdues.pm line 508., referer: /cgi-bin/koha/circ/circulation.pl?borrowernumber=1

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
C4/Circulation.pm

index 6c957a2..0964050 100644 (file)
@@ -4086,15 +4086,28 @@ sub _CalculateAndUpdateFine {
 
     if ( C4::Context->preference('finesMode') eq 'production' ) {
         if ( $amount > 0 ) {
-            C4::Overdues::UpdateFine( $issue->{itemnumber}, $issue->{borrowernumber},
-                $amount, $type, output_pref($datedue) );
+            C4::Overdues::UpdateFine({
+                issue_id       => $issue->{issue_id},
+                itemnumber     => $issue->{itemnumber},
+                borrowernumber => $issue->{borrowernumber},
+                amount         => $amount,
+                type           => $type,
+                due            => output_pref($datedue),
+            });
         }
         elsif ($return_date) {
 
             # Backdated returns may have fines that shouldn't exist,
             # so in this case, we need to drop those fines to 0
 
-            C4::Overdues::UpdateFine( $issue->{itemnumber}, $issue->{borrowernumber}, 0, $type, output_pref($datedue) );
+            C4::Overdues::UpdateFine({
+                issue_id       => $issue->{issue_id},
+                itemnumber     => $issue->{itemnumber},
+                borrowernumber => $issue->{borrowernumber},
+                amount         => 0,
+                type           => $type,
+                due            => output_pref($datedue),
+            });
         }
     }
 }