Move "find hold on copy" logic into own sub
authorJeff Godin <jgodin@tadl.org>
Wed, 9 Oct 2013 16:19:39 +0000 (12:19 -0400)
committerJeff Godin <jgodin@tadl.org>
Tue, 5 Nov 2013 14:26:25 +0000 (09:26 -0500)
Move the "find hold on copy" logic in update_hold_pickup into its
own new subroutine, find_hold_on_copy.

This is to prepare for where we will need to find the hold again in
accept_item.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
iNCIPit.cgi

index e86cb95..68b17bb 100644 (file)
@@ -1610,10 +1610,10 @@ sub place_simple_hold {
     }
 }
 
-sub update_hold_pickup {
+sub find_hold_on_copy {
     check_session_time();
 
-    my ( $copy_barcode, $pickup_lib ) = @_;
+    my ( $copy_barcode ) = @_;
 
     # start with barcode of item, find bib ID
     my $rec = bre_id_from_barcode($copy_barcode);
@@ -1628,7 +1628,6 @@ sub update_hold_pickup {
 
     return undef unless $hold_id;
 
-    # update the copy hold with the new pickup lib information
     my $hold_details =
       OpenSRF::AppSession->create('open-ils.circ')
       ->request( 'open-ils.circ.hold.details.retrieve', $session{authtoken}, $hold_id )
@@ -1638,8 +1637,19 @@ sub update_hold_pickup {
 
     return undef unless blessed($hold);
 
+    return $hold;
+}
+
+sub update_hold_pickup {
+    check_session_time();
+
+    my ( $copy_barcode, $pickup_lib ) = @_;
+
+    my $hold = find_hold_on_copy($copy_barcode);
+
     $hold->pickup_lib($pickup_lib);
 
+    # update the copy hold with the new pickup lib information
     my $result =
       OpenSRF::AppSession->create('open-ils.circ')
       ->request( 'open-ils.circ.hold.update', $session{authtoken}, $hold )