X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=isis_sf.pm;h=f118318dd4c844f963cdf1aae2cc1ad5ff50b976;hb=993e7f130dc12943adddb757e26d24254fd8c50b;hp=f1babf6d34ca1053fc92e2ea6ddc316cbe2207b0;hpb=4009de50fd607079a0bf898472d82d6df32a0f7b;p=webpac diff --git a/isis_sf.pm b/isis_sf.pm index f1babf6..f118318 100644 --- a/isis_sf.pm +++ b/isis_sf.pm @@ -1,9 +1,9 @@ # -# get_sf($isis_row,'isis_field'[,'subfield']) +# isis_sf($isis_row,'isis_field'[,'subfield']) # -# e.g. get_sf($row,'700','a') +# e.g. isis_sf($row,'700','a') # -sub get_sf { +sub isis_sf { my $row = shift @_; my $isis_id = shift @_; my $subfield = shift @_; @@ -15,14 +15,12 @@ sub get_sf { if ($row->{$isis_id}->[$i]) { if (! $subfield) { # subfield list undef, empty or no defined subfields for this record - my $all_sf = $row->{$isis_id}->[$i]; - $all_sf =~ s/\^./ /g; # nuke definitions + my $all_sf = $row->{record}->{$isis_id}->[$i]; + $all_sf =~ s/\^./ /g; # nuke definitions return $all_sf; } - my $sf = OpenIsis::subfields($row->{$isis_id}->[$i]); - if ($sf->{$subfield}) { - return $sf->{$subfield}; - } + my $sf = $row->{$isis_id}->[$i]->{$subfield}; + return $sf if ($sf); } }