/[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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 32 by dpavlin, Sun Jun 29 20:52:33 2008 UTC revision 40 by dpavlin, Mon Jun 30 20:02:12 2008 UTC
# Line 7  use Time::HiRes qw/time/; Line 7  use Time::HiRes qw/time/;
7  use Data::Dump qw/dump/;  use Data::Dump qw/dump/;
8  use Carp qw/confess carp/;  use Carp qw/confess carp/;
9    
10    #use Template::Declare;
11    use base qw/Template::Declare/;
12    use Template::Declare::Tags; # defaults to 'HTML'
13    
14  =head1 NAME  =head1 NAME
15    
16  Frey::HTML - generate html pages  Frey::HTML - generate html pages
# Line 29  foreach ( @view_classes ) { Line 33  foreach ( @view_classes ) {
33          $path =~ s!::!/!g;          $path =~ s!::!/!g;
34          $path .= '.pm';          $path .= '.pm';
35          require $path or warn "Can't require $_ from $path: $!";          require $path or warn "Can't require $_ from $path: $!";
36            # this will import templates as fully qualified paths
37            import_templates $_ under "/$_/";
38  }  }
39    
40  warn "available templates = ",dump( Template::Declare->templates );  warn "available templates = ",dump( Template::Declare->templates );
# Line 36  warn "available templates = ",dump( Temp Line 42  warn "available templates = ",dump( Temp
42  our @javascript;  our @javascript;
43  our $debug = 0;  our $debug = 0;
44    
 use Template::Declare;  
 use Template::Declare::Tags; # defaults to 'HTML'  
45  Template::Declare->init( roots => \@view_classes, around_template => sub {  Template::Declare->init( roots => \@view_classes, around_template => sub {
46          my ($orig, $path, $args, $code) = @_;          my ($orig, $path, $args, $code) = @_;
47            my $from = (caller(1))[3];
48            my $package = __PACKAGE__;
49            if ( $from !~ m/$package/ ) {
50                    warn "SKIP around_template for $path from $from\n";
51                    return $orig->();
52            } else {
53                    warn "WRAP around_temolate for $path from $from\n";
54            }
55    
56          my $t = time;          my $t = time;
57          html {          html {
58                  head {                  head {
# Line 74  Wrap template into html page Line 87  Wrap template into html page
87    
88  sub page {  sub page {
89          my ( $self, $page, $req, $args ) = @_;          my ( $self, $page, $req, $args ) = @_;
90            warn "## buffer_stack ",dump( Template::Declare->buffer_stack );
91            Template::Declare->buffer->clear; # XXX we need to manually do this!
92          warn "## page $page ",dump($args),"\n";          warn "## page $page ",dump($args),"\n";
93          my $out = eval { Template::Declare->show( $page, $req, $args ) };          my $out = eval { Template::Declare->show( $page, $req, $args ) };
94          if ( $@ ) {          if ( $@ ) {
# Line 98  sub add_javascript { Line 113  sub add_javascript {
113          warn "Added javascript $js\n";          warn "Added javascript $js\n";
114          push @javascript, $js;          push @javascript, $js;
115  }  }
116    
117    1;

Legend:
Removed from v.32  
changed lines
  Added in v.40

  ViewVC Help
Powered by ViewVC 1.1.26