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


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 the CGI::Application::Plugin::AnyTemplate manpage, which provides the implementation details specific to rendering templates via the the HTML::Template::Pluggable manpage templating system.

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


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

Syntax

The the HTML::Template::Pluggable manpage 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 the CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplatePluggable manpage 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 the CGI::Application::Plugin::AnyTemplate manpage 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 the CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplatePluggable manpage will copy all of the webapp's query params into the template using the HTML::Template manpage'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 the HTML::Template manpage.

required_modules

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


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, <mag-perl@occamstoothbrush.com>


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.

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