Bug 21075: AutoUnsuspendHolds should unsuspend holds <= today
authorNick Clemens <nick@bywatersolutions.com>
Fri, 13 Jul 2018 14:45:55 +0000 (14:45 +0000)
committerNick Clemens <nick@bywatersolutions.com>
Wed, 8 Aug 2018 21:07:15 +0000 (21:07 +0000)
To recreate:
 1 - Place a hold in your system
 2 - Set that hold (or all holds) to expire today
    update reserves set suspend_until=CONCAT( CURDATE()," 00:00:00");
 3 - Run misc/cronjobs/holds/auto_unsuspend_holds.p
 4 - Note the hold is sitll suspended
 5 - Visit /cgi-bin/koha/reserve/request.pl for the book with the hold
 6 - Note the suspend date is tomorrow (and cannot be set to today]
 7 - Click update holds - the date in db is now set to tomorrow
 8 - Reset to today
 9 - Apply patch
10 - Run the cron again
11 - Visit the page and note hold is unsuspended

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
C4/Reserves.pm

index 359fd98..ab901c8 100644 (file)
@@ -804,7 +804,7 @@ Unsuspends all suspended reserves with a suspend_until date from before today.
 sub AutoUnsuspendReserves {
     my $today = dt_from_string();
 
-    my @holds = Koha::Holds->search( { suspend_until => { '<' => $today->ymd() } } );
+    my @holds = Koha::Holds->search( { suspend_until => { '<=' => $today->ymd() } } );
 
     map { $_->suspend(0)->suspend_until(undef)->store() } @holds;
 }