sub mk_templates {
my ( $self, $helper ) = @_;
- my $base = $helper->{base};
- my $tdir = File::Spec->catfile( $base, 'templates' );
- my $ldir = File::Spec->catfile( $tdir, 'lib' );
- my $sdir = File::Spec->catfile( $tdir, 'src' );
+ my $base = $helper->{base},;
+ my $ldir = File::Spec->catfile( $base, 'root', 'lib' );
+ my $sdir = File::Spec->catfile( $base, 'root', 'src' );
$helper->mk_dir($ldir);
$helper->mk_dir($sdir);
# add something like the following to your main application module
sub message : Global {
- my ($self, $c) = @_;
- $c->stash->{ template } = 'message.tt2';
- $c->stash->{ message } = $c->req->param('message') || 'Hello World';
+ my ( $self, $c ) = @_;
+ $c->stash->{template} = 'message.tt2';
+ $c->stash->{message} ||= $c->req->param('message') || 'No message';
}
sub default : Private {
- my ($self, $c) = @_;
- $c->stash->{ template } = 'welcome.tt2';
+ my ( $self, $c ) = @_;
+ $c->stash->{template} = 'welcome.tt2';
}
sub end : Private {
- my ($self, $c) = @_;
+ my ( $self, $c ) = @_;
$c->forward('MyApp::V::TT');
}
use strict;
use base 'Catalyst::View::TT';
-use NEXT;
-sub new {
- my $self = shift;
- my $c = shift;
- my $root = $c->config->{ root };
- my $template = $c->config->{ template } || { };
-
- $template->{ CATALYST_VAR } ||= 'Catalyst',
- $template->{ INCLUDE_PATH } ||= [ "$root/templates/src", "$root/templates/lib" ];
- $template->{ PRE_PROCESS } ||= 'config/main';
- $template->{ WRAPPER } ||= 'site/wrapper';
- $template->{ ERROR } ||= 'error.tt2';
-
- return $self->NEXT::new($c, @_);
-}
+__PACKAGE__->config({
+ CATALYST_VAR => 'Catalyst',
+ INCLUDE_PATH => [
+ MyApp->path_to( 'root', 'src' )
+ MyApp->path_to( 'root', 'lib' )
+ ],
+ PRE_PROCESS => 'config/main',
+ WRAPPER => 'site/wrapper',
+ ERROR => 'error.tt2',
+ TIMER => 0
+});
=head1 NAME
-[% class %] - TT View Component
+[% class %] - Catalyst TTSite View
=head1 SYNOPSIS
=head1 DESCRIPTION
-TT View Component.
+Catalyst TTSite View.
=head1 AUTHOR
=head1 LICENSE
-This library is free software . You can redistribute it and/or modify
-it under the same terms as perl itself.
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
=cut
__site_wrapper__
[% TAGS star -%]
[% IF template.name.match('\.(css|js|txt)');
- debug("passing page through as text: $template.name");
+ debug("Passing page through as text: $template.name");
content;
ELSE;
- debug("applying HTML page layout wrappers to $template.name\n");
+ debug("Applying HTML page layout wrappers to $template.name\n");
content WRAPPER site/html + site/layout;
END;
-%]