Skip to content

A dispatcher for mod_perl 2, with some hooks for Template Toolkit

Notifications You must be signed in to change notification settings

jsut/Apache2-DirBasedHandler-TT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAME
    Apache2::DirBasedHandler::TT - TT hooked into DirBasedHandler

VERSION
    This documentation refers to <Apache2::DirBasedHandler::TT> version 0.03

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) = @_;

          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.

DEPENDENCIES
    This module requires modperl 2 (http://perl.apache.org), and libapreq
    (http://httpd.apache.org/apreq/) which must be installed seperately. It
    also depends on Apache2::DirBasedHandler

INCOMPATIBILITIES
    There are no known incompatibilities for this module.

BUGS AND LIMITATIONS
    There are no known bugs in this module. Please report any problems
    through

    http://rt.cpan.org/Public/Dist/Display.html?Name=Apache2-DirBasedHandler
    -TT

AUTHOR
    Adam Prime (adam.prime@utoronto.ca)

LICENSE AND COPYRIGHT
    Copyright (c) 2008 by Adam Prime (adam.prime@utoronto.ca). All rights
    reserved. This program is free software; you can redistribute it and/or
    modify it under the same terms as Perl itself. See perlartistic.

    This module is distributed in the hope that it will be useful, but
    WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

About

A dispatcher for mod_perl 2, with some hooks for Template Toolkit

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages