8 |
my $isis_id = shift @_; |
my $isis_id = shift @_; |
9 |
my $subfield = shift @_; |
my $subfield = shift @_; |
10 |
|
|
11 |
if ($row->{$isis_id}->[0]) { |
my $i = shift @_ || 0; |
12 |
my $sf = OpenIsis::subfields($row->{$isis_id}->[0]); |
|
13 |
|
my $out; |
14 |
|
|
15 |
|
if ($row->{$isis_id}->[$i]) { |
16 |
|
my $sf = OpenIsis::subfields($row->{$isis_id}->[$i]); |
17 |
if (! defined $subfield || length($subfield) == 0) { |
if (! defined $subfield || length($subfield) == 0) { |
18 |
# subfield list undef, empty or no defined subfields for this record |
# subfield list undef, empty or no defined subfields for this record |
19 |
my $all_sf = $row->{$isis_id}->[0]; |
my $all_sf = $row->{$isis_id}->[$i]; |
20 |
$all_sf =~ s/\^./ /g; nuke definirions |
$all_sf =~ s/\^./ /g; # nuke definitions |
21 |
return $all_sf; |
return $all_sf; |
22 |
} elsif ($sf->{$subfield}) { |
} elsif ($sf->{$subfield}) { |
23 |
return $sf->{$subfield}; |
return $sf->{$subfield}; |
24 |
} |
} |