force reingest via open-ils.ingest
authormiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 13 Oct 2010 00:25:59 +0000 (00:25 +0000)
committermiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 13 Oct 2010 00:25:59 +0000 (00:25 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_1_6@18297 dcc99617-32d9-48b4-a31d-7c20da2025e4

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

index 8f4ee12..3864523 100644 (file)
@@ -194,6 +194,7 @@ sub template_overlay_biblio_record_entry {
 
     $records = [$records] if (!ref($records));
 
+    my @good;
     for my $rid ( @$records ) {
         my $rec = $e->retrieve_biblio_record_entry($rid);
         next unless $rec;
@@ -208,9 +209,15 @@ sub template_overlay_biblio_record_entry {
         )->[0]->{'vandelay.template_overlay_bib_record'};
 
         $conn->respond({ record => $rid, success => $success });
+        push(@good, $rid) if ($success eq 't'); 
     }
 
     $e->commit;
+    $conn->respond_complete;
+
+    my $ses = OpenSRF::AppSession->create('open-ils.ingest');
+    $ses->request('open-ils.ingest.full.biblio.record', $_)->gather(1) for (@good);
+
     return undef;
 }
 
@@ -257,7 +264,6 @@ sub template_overlay_container {
             return undef;
         }
         $items = [grep { $_->target_biblio_record_entry > 0 } @$items];
-
         $template = $e->retrieve_biblio_record_entry( $titem->target_biblio_record_entry )->marc;
     }
 
@@ -268,6 +274,7 @@ sub template_overlay_container {
         $actor->request('open-ils.actor.anon_cache.set_value', $auth, res_list => $responses)->gather(1)
     ) if ($actor);
 
+    my @good;
     for my $item ( @$items ) {
         my $rec = $e->retrieve_biblio_record_entry($item->target_biblio_record_entry);
         next unless $rec;
@@ -289,6 +296,7 @@ sub template_overlay_container {
         }
 
         if ($success eq 't') {
+            push(@good, $rid) if ($success eq 't'); 
             unless ($e->delete_container_biblio_record_entry_bucket_item($item)) {
                 $e->rollback;
                 if ($actor) {
@@ -311,8 +319,10 @@ sub template_overlay_container {
             push @$responses, { complete => 1, success => 't' };
             $actor->request('open-ils.actor.anon_cache.set_value', $auth, res_list => $responses);
         } else {
-            return { complete => 1, success => 't' };
+            $conn->respond_complete( { complete => 1, success => 't' } );
         }
+        my $ses = OpenSRF::AppSession->create('open-ils.ingest');
+        $ses->request('open-ils.ingest.full.biblio.record', $_)->gather(1) for (@good);
     } else {
         if ($actor) {
             push @$responses, { complete => 1, success => 'f' };