From f9e47781c7ff541f46ec19aa1475ae5e5886cf75 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Tue, 25 Aug 2015 10:35:28 -0400 Subject: [PATCH] Bug 14640 - 'Cancel Hold' check box on check-out confirmation does not cancel the hold when item is checked out. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This bug is dealing with the situation where an item is checked out to a patron that is not the next in line hold-wise for an item. In this case, Koha will warn the librarian that there are holds on the item and show the first person in line. Again, I want to stress that this is the case where the item *is not waiting* for a patron. The hold for the patron listed will just have a priority of 1. The only situation where the "Cancel hold" checkbox will function is when the priority 1 hold is an item level hold. This is due to the fact that CancelReserve is being passed the trio of biblionumber, borrowernumber, and itemnumber rather than the singular reserve_id. 1) place biblio level hold on a book to borrower A. 2) check out an item of the book to borrower B. 3) When confirming checkout, check the 'Cancel hold' check-box, and click the "Yes, check out" button. 4) Note the hold was not canceled 5) Apply this patch 6) Repeat steps 1 through 3 7) Note the hold was indeed canceled Signed-off-by: Joonas Kylmälä Signed-off-by: Jonathan Druart --- C4/Reserves.pm | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/C4/Reserves.pm b/C4/Reserves.pm index a300a4a..7b7d0e1 100644 --- a/C4/Reserves.pm +++ b/C4/Reserves.pm @@ -2183,11 +2183,7 @@ sub MoveReserve { RevertWaitingStatus({ itemnumber => $itemnumber }); } elsif ( $cancelreserve eq 'cancel' || $cancelreserve ) { # cancel reserves on this item - CancelReserve({ - biblionumber => $res->{'biblionumber'}, - itemnumber => $res->{'itemnumber'}, - borrowernumber => $res->{'borrowernumber'} - }); + CancelReserve( { reserve_id => $res->{'reserve_id'} } ); } } } -- 2.1.0