NAME
Apache2::DirBasedHandler::TT - TT hooked into DirBasedHandler
SYNOPSIS
package My::Thingy;
use strict;
use Apache2::DirBasedHandler::TT
our @ISA = qw(Apache2::DirBasedHandler::TT);
use Apache2::Const -compile => qw(:common);
sub index {
my $self = shift;
my ($r,$uri_args,$args) = @_;
if (@$uri_args) {
return Apache2::Const::NOT_FOUND;
}
$$args{'vars'}{'blurb'} = qq[this is the index];
return $self->process_template(
$r,
$$args{'tt'},
$$args{'vars'},
qq[blurb.tmpl],
qq[text/plain; charset=utf-8],
);
}
sub super_page {
my $self = shift;
my ($r,$uri_args,$args) = @_;
$$args{'vars'}{'blurb'} = qq[this is \$location/super and all it's contents];
return $self->process_template(
$r,
$$args{'tt'},
$$args{'vars'},
qq[blurb.tmpl],
qq[text/plain; charset=utf-8],
);
}
sub super_dooper_page {
my $self = shift;
my ($r,$uri_args,$args) = @_;
$$args{'vars'}{'blurb'} = qq[this is \$location/super/dooper and all it's contents];
return $self->process_template(
$r,
$$args{'tt'},
$$args{'vars'},
qq[blurb.tmpl],
qq[text/plain; charset=utf-8],
);
}
1;
DESCRIPTION
Apache2::DirBasedHandler::TT, is an subclass of Apache2::DirBasedHandler with modified to allow easy use of Template Toolkit templates for content generation.
init
init
calls get_tt to get the template object, and stuffs it into the hash it gets back from the super class.
get_tt
get_tt
returns a Template Toolkit object, and a hash reference of variables which will be passed into the TT process call. You should really override this function with to create the Template object appropriate to your environment.
process_template
process_template
is a helper function to generate a page based using the template object, variables, and template passed in. It sets the content_type of the response to the value of the fifth argument.
AUTHOR AND COPYRIGHT
Copyright 2008, Adam Prime (adam.prime@utoronto.ca)
This software is free. It is licensed under the same terms as Perl itself.