NAME

CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplatePluggable - HTML::Template::Pluggable driver to AnyTemplate

SYNOPSIS

# Load Pluggable and your plugins before using this driver.
use HTML::Template::Pluggable;
use HTML::Template::Plugin::Dot;

DESCRIPTION

This is a driver for CGI::Application::Plugin::AnyTemplate, which provides the implementation details specific to rendering templates via the HTML::Template::Pluggable templating system.

All AnyTemplate drivers are designed to be used the same way. For general usage instructions, see the documentation of CGI::Application::Plugin::AnyTemplate.

EMBEDDED COMPONENT SYNTAX (HTML::Template::Pluggable)

Syntax

The HTML::Template::Pluggable syntax for embedding components is:

<TMPL_VAR NAME="cgiapp.embed('some_run_mode', param1, param2, 'literal string3')">

This can be overridden by the following configuration variables:

embed_tag_name       # default 'cgiapp'

For instance by setting the following value in your configuration file:

embed_tag_name       '__acme'

Then the embedded component tag will look like:

<TMPL_VAR NAME="__acme.embed('some_run_mode')">

The value of embed_tag_name must consist of numbers, letters and underscores (_), and must not begin with a number.

CONFIGURATION

The CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplatePluggable driver accepts the following config parameters:

embed_tag_name

The name of the tag used for embedding components. Defaults to cgiapp.

template_extension

If auto_add_template_extension is true, then CGI::Application::Plugin::AnyTemplate will append the value of template_extension to filename. By default the template_extension is .html.

associate_query

This feature is now deprecated and will be removed in a future release.

If this config parameter is true, then CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplatePluggable will copy all of the webapp's query params into the template using HTML::Template's associate mechanism:

my $driver = HTML::Template::Pluggable->new(
    associate => $self->query,
);

By default associate_query is false.

If you provide an associate config parameter of your own, that will disable the associate_query functionality.

All other configuration parameters are passed on unchanged to HTML::Template.

required_modules

The required_modules function returns the modules required for this driver to operate. In this case: HTML::Template.

DRIVER METHODS

initialize

Initializes the HTMLTemplate driver. See the docs for CGI::Application::Plugin::AnyTemplate::Base for details.

render_template

Fills the HTML::Template::Pluggable object with $self->param replacing any magic *embed* tags with the content generated by the appropriate runmodes.

Returns the output of the filled template as a string reference.

See the docs for CGI::Application::Plugin::AnyTemplate::Base for details.

SEE ALSO

CGI::Application::Plugin::AnyTemplate
CGI::Application::Plugin::AnyTemplate::Base
CGI::Application::Plugin::AnyTemplate::ComponentHandler
CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplate
CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplateExpr
CGI::Application::Plugin::AnyTemplate::Driver::TemplateToolkit
CGI::Application::Plugin::AnyTemplate::Driver::Petal

CGI::Application

Template::Toolkit
HTML::Template

HTML::Template::Pluggable
HTML::Template::Plugin::Dot

Petal

Exporter::Renaming

CGI::Application::Plugin::TT

AUTHOR

Michael Graham, <mgraham@cpan.org>

COPYRIGHT & LICENSE

Copyright 2005 Michael Graham, All Rights Reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.