--- loncom/xml/style.pm 2003/09/19 17:46:59 1.18 +++ loncom/xml/style.pm 2003/11/09 01:14:30 1.20 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Style Parser Module (new version) # -# $Id: style.pm,v 1.18 2003/09/19 17:46:59 sakharuk Exp $ +# $Id: style.pm,v 1.20 2003/11/09 01:14:30 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -49,7 +49,6 @@ sub styleparser { my ($target,$content_style_string)=@_; my @keys = (); my @values = (); - my @style_array = (); my $current_value; my $allow=0; my $pstyle = HTML::TokeParser->new(\$content_style_string); @@ -78,14 +77,14 @@ sub styleparser { $allow=0; } elsif (($target ne 'meta') && ($target ne 'tex') && ($stoken->[0] eq 'E') && ($stoken->[1] eq 'tex')) { $allow=1; - } elsif (($stoken->[0] eq 'S') && ($stoken->[1] eq 'target') && ($stoken->[2]->{'name'} ne $target)) { + } elsif (($stoken->[0] eq 'S') && ($stoken->[1] eq 'target') && (not $stoken->[2]->{'name'}=~/(^\s*$target\s*,|,\s*$target\s*,|,\s*$target\s*$|^\s*$target\s*$)/)) { $allow=0; } elsif (($stoken->[0] eq 'E') && ($stoken->[1] eq 'target')) { $allow=1; } elsif (($target ne 'meta') && ($stoken->[0] eq 'S') && ($stoken->[1] eq $target)) { $allow=1; } elsif (($target ne 'meta') && ($stoken->[0] eq 'E') && ($stoken->[1] eq $target)) { - } elsif (($stoken->[0] eq 'S') && ($stoken->[1] eq 'target') && ($stoken->[2]->{'name'} eq $target)) { + } elsif (($stoken->[0] eq 'S') && ($stoken->[1] eq 'target') && ($stoken->[2]->{'name'}=~/(^\s*$target\s*,|,\s*$target\s*,|,\s*$target\s*$|^\s*$target\s*$)/)) { $allow=1; } elsif ($allow) { if ($stoken->[0] eq 'T') { @@ -113,10 +112,12 @@ sub styleparser { } } } + my %style_for_target; for (my $i=0; $i<=$#keys; $i++) { - push @style_array,$keys[$i],$values[$i]; + if ($values[$i] !~ /^\s*$/) { + $style_for_target{$keys[$i]}=$values[$i]; + } } - my %style_for_target = @style_array; return %style_for_target; }