7 |
_debug |
_debug |
8 |
_pack_subfields_hash |
_pack_subfields_hash |
9 |
|
|
10 |
search_display search display |
search_display search display sorted |
11 |
|
|
12 |
marc marc_indicators marc_repeatable_subfield |
marc marc_indicators marc_repeatable_subfield |
13 |
marc_compose marc_leader marc_fixed |
marc_compose marc_leader marc_fixed |
41 |
|
|
42 |
WebPAC::Normalize - describe normalisaton rules using sets |
WebPAC::Normalize - describe normalisaton rules using sets |
43 |
|
|
|
=head1 VERSION |
|
|
|
|
|
Version 0.30 |
|
|
|
|
44 |
=cut |
=cut |
45 |
|
|
46 |
our $VERSION = '0.30'; |
our $VERSION = '0.31'; |
47 |
|
|
48 |
=head1 SYNOPSIS |
=head1 SYNOPSIS |
49 |
|
|
108 |
_clean_ds( %{ $arg } ); |
_clean_ds( %{ $arg } ); |
109 |
$load_row_coderef = $arg->{load_row_coderef}; |
$load_row_coderef = $arg->{load_row_coderef}; |
110 |
|
|
111 |
|
# FIXME load this conditionally |
112 |
|
use WebPAC::Normalize::ISBN; |
113 |
|
|
114 |
eval "$arg->{rules}"; |
eval "$arg->{rules}"; |
115 |
die "error evaling $arg->{rules}: $@\n" if ($@); |
die "error evaling $arg->{rules}: $@\n" if ($@); |
116 |
|
|
477 |
|
|
478 |
=cut |
=cut |
479 |
|
|
480 |
sub display { |
sub _field { |
481 |
my $name = shift or die "display needs name as first argument"; |
my $type = shift or confess "need type -- BUG?"; |
482 |
|
my $name = shift or confess "needs name as first argument"; |
483 |
my @o = grep { defined($_) && $_ ne '' } @_; |
my @o = grep { defined($_) && $_ ne '' } @_; |
484 |
return unless (@o); |
return unless (@o); |
485 |
$out->{$name}->{display} = \@o; |
$out->{$name}->{$type} = \@o; |
486 |
} |
} |
487 |
|
|
488 |
|
sub display { _field( 'display', @_ ) } |
489 |
|
|
490 |
=head2 search |
=head2 search |
491 |
|
|
492 |
Prepare values just for I<search> |
Prepare values just for I<search> |
495 |
|
|
496 |
=cut |
=cut |
497 |
|
|
498 |
sub search { |
sub search { _field( 'search', @_ ) } |
499 |
my $name = shift or die "search needs name as first argument"; |
|
500 |
my @o = grep { defined($_) && $_ ne '' } @_; |
=head2 sorted |
501 |
return unless (@o); |
|
502 |
$out->{$name}->{search} = \@o; |
Insert into lists which will be automatically sorted |
503 |
} |
|
504 |
|
sorted('Title', rec('200','a') ); |
505 |
|
|
506 |
|
=cut |
507 |
|
|
508 |
|
sub sorted { _field( 'sorted', @_ ) } |
509 |
|
|
510 |
|
|
511 |
=head2 marc_leader |
=head2 marc_leader |
512 |
|
|