19 |
use File::Path; |
use File::Path; |
20 |
use Time::HiRes qw/time/; |
use Time::HiRes qw/time/; |
21 |
use File::Slurp; |
use File::Slurp; |
22 |
use MARC::Record; |
use MARC::Record 2.0; # need 2.0 for utf-8 encoding see marcpm.sf.net |
23 |
|
|
24 |
=head1 NAME |
=head1 NAME |
25 |
|
|
226 |
|
|
227 |
foreach my $normalize (@norm_array) { |
foreach my $normalize (@norm_array) { |
228 |
|
|
|
my $rules; |
|
229 |
my $normalize_path = $normalize->{path} || $log->logdie("can't find normalize path in config"); |
my $normalize_path = $normalize->{path} || $log->logdie("can't find normalize path in config"); |
230 |
|
|
231 |
$log->logdie("Found '$normalize_path' as normalization file which isn't supported any more!") unless ( $normalize_path =~ m!\.pl$!i ); |
$log->logdie("Found '$normalize_path' as normalization file which isn't supported any more!") unless ( $normalize_path =~ m!\.pl$!i ); |
268 |
row => $row, |
row => $row, |
269 |
rules => $rules, |
rules => $rules, |
270 |
lookup => $lookup ? $lookup->lookup_hash : undef, |
lookup => $lookup ? $lookup->lookup_hash : undef, |
271 |
|
marc_encoding => 'utf-8', |
272 |
); |
); |
273 |
|
|
274 |
$db->save_ds( |
$db->save_ds( |
285 |
|
|
286 |
if ($marc_fh) { |
if ($marc_fh) { |
287 |
my $marc = new MARC::Record; |
my $marc = new MARC::Record; |
288 |
|
$marc->encoding( 'utf-8' ); |
289 |
$marc->add_fields( WebPAC::Normalize::_get_marc21_fields() ); |
$marc->add_fields( WebPAC::Normalize::_get_marc21_fields() ); |
290 |
print $marc_fh $marc->as_usmarc; |
print $marc_fh $marc->as_usmarc; |
291 |
} |
} |