/[Frey]/trunk/lib/Frey/HTML.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk/lib/Frey/HTML.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 225 - (show annotations)
Sat Nov 1 00:59:02 2008 UTC (15 years, 4 months ago) by dpavlin
File size: 716 byte(s)
role for html_escape
1 package Frey::HTML;
2 use Moose;
3
4 use HTML::TreeBuilder;
5 use Data::Dump qw/dump/;
6
7 has 'html' => (
8 is => 'rw',
9 isa => 'Str',
10 required => 1,
11 );
12
13 sub xhtml {
14 my $self = shift;
15
16 my $html = HTML::TreeBuilder->new;
17
18 $html->parse( $self->html );
19 $html->eof;
20
21 my $result = $self->_parse( $html->guts );
22 $html->delete;
23
24 return $result;
25 }
26
27 sub _parse {
28 my $self = shift;
29 foreach my $element ( @_ ) {
30 if ( blessed $element && $element->isa('HTML::Element') ) {
31 my $tag = $element->tag;
32 my @kids = $element->content_list;
33 warn dump( $tag, @kids );
34 return "<$tag>" . _parse( @kids ) . "</$tag>";
35 } else {
36 # plain text
37 warn dump( $element );
38 return $self->html_escape( $element );
39 }
40 }
41 }
42
43 1;

  ViewVC Help
Powered by ViewVC 1.1.26