X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FHTML-Zoom.git;a=blobdiff_plain;f=lib%2FHTML%2FZoom%2FFilterBuilder.pm;fp=lib%2FHTML%2FZoom%2FFilterBuilder.pm;h=ed7fef161bacf6fe8d9597eeb860ac8cb55ef136;hp=8374e911100baa5b29471c9ee395bb4e1410e6b3;hb=0c58a1e1705f0eafd1c6457ed5f26104e2bb4ad4;hpb=57076fa16f45eb212dac6cda4cf9231938479802 diff --git a/lib/HTML/Zoom/FilterBuilder.pm b/lib/HTML/Zoom/FilterBuilder.pm index 8374e91..ed7fef1 100644 --- a/lib/HTML/Zoom/FilterBuilder.pm +++ b/lib/HTML/Zoom/FilterBuilder.pm @@ -44,7 +44,7 @@ sub _parse_attribute_args { die "Long form arg (name => 'class', value => 'x') is no longer supported" if(@_ == 1 && $_[0]->{'name'} && $_[0]->{'value'}); - + my $opts = ref($_[0]) eq 'HASH' ? $_[0] : {$_[0] => $_[1]}; for (values %{$opts}) { $self->_zconfig->parser->html_escape($_); } return $opts; @@ -71,7 +71,7 @@ sub add_to_attribute { +{ %$evt, raw => undef, raw_attrs => undef, attrs => { %$a, - map {$_ => join(' ', (exists $a->{$_} ? $a->{$_} : ()), $attr->{$_}) } + map {$_ => join(' ', (exists $a->{$_} ? $a->{$_} : ()), $attr->{$_}) } keys %$attr }, @kadd ? (attr_names => [ @{$evt->{attr_names}}, @kadd ]) : () @@ -88,7 +88,7 @@ sub remove_from_attribute { attrs => { %$a, #TODO needs to support multiple removes - map { my $tar = $_; $_ => join ' ', + map { my $tar = $_; $_ => join ' ', map {$attr->{$tar} ne $_} split ' ', $a->{$_} } grep {exists $a->{$_}} keys %$attr }, @@ -677,9 +677,9 @@ Similar to add_before, but adds the content to the match. ->select('p') ->prepend_content("Hello ") ->to_html - + ##

Hello World

- + Acceptable values are strings, scalar refs and L objects =head2 append_content @@ -691,7 +691,7 @@ Similar to add_after, but adds the content to the match. ->select('p') ->prepend_content("World") ->to_html - + ##

Hello World

Acceptable values are strings, scalar refs and L objects @@ -728,7 +728,7 @@ pre-generated) } } @list ]); - + Subroutines would be run with $_ localized to result of L (of collected elements), and with said result passed as parameter to subroutine.