Check for filled hold on transit checkin
authorThomas Berezansky <tsbere@mvlc.org>
Tue, 31 Jul 2012 19:35:21 +0000 (15:35 -0400)
committerBill Erickson <berick@esilibrary.com>
Wed, 15 Aug 2012 18:17:07 +0000 (14:17 -0400)
"Fill related hold" can grab a hold out from under a transit, so check for
filled holds in addition to canceled ones.

Signed-off-by: Thomas Berezansky <tsbere@mvlc.org>
Signed-off-by: Bill Erickson <berick@esilibrary.com>

Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm

index 262e0ba..83a46a8 100644 (file)
@@ -2588,9 +2588,9 @@ sub do_checkin {
 
             $self->hold($hold);
 
-            if( $hold and $hold->cancel_time ) { # this transited hold was cancelled mid-transit
+            if( $hold and ( $hold->cancel_time or $hold->fulfillment_time ) ) { # this transited hold was cancelled or filled mid-transit
 
-                $logger->info("circulator: we received a transit on a cancelled hold " . $hold->id);
+                $logger->info("circulator: we received a transit on a cancelled or filled hold " . $hold->id);
                 $self->reshelve_copy(1);
                 $self->cancelled_hold_transit(1);
                 $self->notify_hold(0); # don't notify for cancelled holds