Adjust the leader/05 of records that have been deleted or undeleted
authordbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 4 Nov 2009 05:49:12 +0000 (05:49 +0000)
committerdbs <dbs@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Wed, 4 Nov 2009 05:49:12 +0000 (05:49 +0000)
Complies with http://www.loc.gov/marc/bibliographic/bdleader.html

git-svn-id: svn://svn.open-ils.org/ILS/trunk@14763 dcc99617-32d9-48b4-a31d-7c20da2025e4

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

index f4ccd7c..4ed241f 100644 (file)
@@ -216,6 +216,11 @@ sub undelete_biblio_record_entry {
     $record->deleted('f');
     $record->active('t');
 
+    # Set the leader/05 to indicate that the record has been corrected/revised
+    my $marc = $record->marc();
+    $marc =~ s{(<leader>.{5}).}{$1c};
+    $record->marc($marc);
+
     # no 2 non-deleted records can have the same tcn_value
     my $existing = $e->search_biblio_record_entry(
         {   deleted => 'f', 
index 3ad0343..dc06a9c 100644 (file)
@@ -312,6 +312,12 @@ sub delete_rec {
    $rec->active('f');
    $rec->editor( $editor->requestor->id );
    $rec->edit_date('now');
+
+   # Set the leader/05 to indicate that the record has been deleted
+   my $marc = $rec->marc();
+   $marc =~ s{(<leader>.{5}).}{$1d};
+   $rec->marc($marc);
+
    $editor->update_biblio_record_entry($rec) or return $editor->event;
 
    return undef;