added deleted check to copy search, not responding with event if copy circ-lib =...
authorerickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Tue, 8 Aug 2006 02:05:13 +0000 (02:05 +0000)
committererickson <erickson@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Tue, 8 Aug 2006 02:05:13 +0000 (02:05 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@5355 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/perlmods/OpenILS/Application/Cat.pm

index b818a15..ad13346 100644 (file)
@@ -1212,14 +1212,24 @@ sub batch_volume_transfer {
                # take note of the fact that we've looked at this set of volumes
                push( @seen, $_->id ) for @all;
 
-
                # for each volume, see if there are any copies that have a 
-               # remote circ_lib (circ_lib != vol->owning_lib).  if so, warn them
+               # remote circ_lib (circ_lib != vol->owning_lib and != $o_lib ).  
+               # if so, warn them
                unless( $self->api_name =~ /override/ ) {
                        for my $v (@all) {
+
                                $logger->debug("merge: searching for copies with remote circ_lib for volume ".$v->id);
-                               my $copies = $e->search_asset_copy(
-                                       { call_number=>$v->id, circ_lib => { '!=' => $v->owning_lib } }, {idlist=>1});
+                               my $args = { 
+                                       call_number     => $v->id, 
+                                       circ_lib                => { "!=" => $v->owning_lib },
+                                       deleted         => 'f'
+                               };
+
+                               my $copies = $e->search_asset_copy($args, {idlist=>1});
+
+                               # if the copy's circ_lib matches the destination lib,
+                               # that's ok too
+                               $copies = [ grep { $_->circ_lib ne $o_lib } @$copies ];
                                return OpenILS::Event->new('COPY_REMOTE_CIRC_LIB') if @$copies;
                        }
                }