# pass the MARC::Record to this function, and it will create the records in the authority table
my ($record,$authid,$authtypecode) = @_;
my $dbh=C4::Context->dbh;
- my $leader=' nz a22 o 4500';#Leader for incomplete MARC21 record
+ my $leader=' nz a22 o 4500';#Leader for incomplete MARC21 record
# if authid empty => true add, find a new authid number
- my $format;
- if (uc(C4::Context->preference('marcflavour')) eq 'UNIMARC') {
- $format= 'UNIMARCAUTH';
- }
- else {
- $format= 'MARC21';
- }
+ my $format= 'UNIMARCAUTH' if (uc(C4::Context->preference('marcflavour')) eq 'UNIMARC');
+ $format= 'MARC21' if (uc(C4::Context->preference('marcflavour')) ne 'UNIMARC');
if ($format eq "MARC21") {
if (!$record->leader) {
$marcrecordauth->insert_fields_ordered(MARC::Field->new('670','','','a'=>$cite));
}
+ if (C4::Context->preference('marcflavour') eq 'MARC21') {
+ $marcrecordauth->insert_fields_ordered(MARC::Field->new('667','','','a'=>"Machine generated authority record."));
+ my $cite = $record->author() . ", " . $record->title_proper() . ", " . $record->publication_date() . " ";
+ $cite =~ s/^[\s\,]*//;
+ $cite =~ s/[\s\,]*$//;
+ $cite = "Work cat.: (" . C4::Context->preference('MARCOrgCode') . ")". $record->subfield('999','c') . ": " . $cite;
+ $marcrecordauth->insert_fields_ordered(MARC::Field->new('670','','','a'=>$cite));
+ }
+
# warn "AUTH RECORD ADDED : ".$marcrecordauth->as_formatted;
my $authid=AddAuthority($marcrecordauth,'',$data->{authtypecode});