Apache2-DirBasedHandler-TT
view release on metacpan or search on metacpan
lib/Apache2/DirBasedHandler/TT.pm view on Meta::CPAN
package Apache2::DirBasedHandler::TT;
use strict;
use warnings;
use base qw(Apache2::DirBasedHandler);
use Template;
our $tt;
our $VERSION = 0.03;
sub init {
my ($self,$r) = @_;
my $hash = $self->SUPER::init($r);
my ($tt,$vars) = $self->get_tt($r);
$hash->{'tt'} = $tt;
$hash->{'vars'} = $vars;
return $hash;
}
sub get_tt {
my $self = shift;
my $r = shift;
$tt ||= Template->new({
'INCLUDE_PATH' => [$r->document_root],
});
my $vars = {};
if ($r) {
$vars->{'r'} = $r;
};
return ($tt,$vars);
}
sub process_template {
my ($self,$r,$tt,$vars,$template_name,$content_type) = @_;
my $page_out;
if (!$tt->process($template_name, $vars, \$page_out)) {
$r->log_error($template_name . q[ ] . $tt->error);
return Apache2::Const::SERVER_ERROR;
}
return (Apache2::Const::OK,$page_out,$content_type);
}
1;
__END__
=head1 NAME
Apache2::DirBasedHandler::TT - TT hooked into DirBasedHandler
=head1 VERSION
This documentation refers to <Apache2::DirBasedHandler::TT> version 0.03
=head1 SYNOPSIS
package My::Thingy;
use strict;
use Apache2::DirBasedHandler::TT
our @ISA = qw(Apache2::DirBasedHandler::TT);
use Apache2::Const -compile => qw(:common);
sub root_index {
my $self = shift;
my ($r,$uri_args,$args) = @_;
( run in 2.530 seconds using v1.01-cache-2.11-cpan-0bb4e1dffa6 )