1 |
# |
# |
2 |
# get_sf($isis_row,'isis_field'[,'subfield']) |
# isis_sf($isis_row,'isis_field'[,'subfield']) |
3 |
# |
# |
4 |
# e.g. get_sf($row,'700','a') |
# e.g. isis_sf($row,'700','a') |
5 |
# |
# |
6 |
sub get_sf { |
sub isis_sf { |
7 |
my $row = shift @_; |
my $row = shift @_; |
8 |
my $isis_id = shift @_; |
my $isis_id = shift @_; |
9 |
my $subfield = shift @_; |
my $subfield = shift @_; |
15 |
if ($row->{$isis_id}->[$i]) { |
if ($row->{$isis_id}->[$i]) { |
16 |
if (! $subfield) { |
if (! $subfield) { |
17 |
# subfield list undef, empty or no defined subfields for this record |
# subfield list undef, empty or no defined subfields for this record |
18 |
my $all_sf = $row->{$isis_id}->[$i]; |
my $all_sf = $row->{record}->{$isis_id}->[$i]; |
19 |
$all_sf =~ s/\^./ /g; # nuke definitions |
$all_sf =~ s/\^./ /g; # nuke definitions |
20 |
return $all_sf; |
return $all_sf; |
21 |
} |
} |
22 |
my $sf = OpenIsis::subfields($row->{$isis_id}->[$i]); |
my $sf = $row->{$isis_id}->[$i]->{$subfield}; |
23 |
if ($sf->{$subfield}) { |
return $sf if ($sf); |
|
return $sf->{$subfield}; |
|
|
} |
|
24 |
} |
} |
25 |
} |
} |
26 |
|
|