repeatable field support, filter functions added, broken charset (again!)
[webpac] / isis_sf.pm
1 #
2 # isis_sf($isis_row,'isis_field'[,'subfield'])
3 #
4 # e.g. isis_sf($row,'700','a')
5 #
6 sub isis_sf {
7         my $row = shift @_;
8         my $isis_id = shift @_;
9         my $subfield = shift @_;
10
11         my $i = shift @_ || 0;
12
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) {
18                         # subfield list undef, empty or no defined subfields for this record
19                         my $all_sf = $row->{$isis_id}->[$i];
20                         $all_sf =~ s/\^./ /g;   # nuke definitions
21                         return $all_sf; 
22                 } elsif ($sf->{$subfield}) {
23                         return $sf->{$subfield};
24                 }
25         }
26 }
27
28 1;
29