Html::template::pluggable driver to anytemplate
# Load Pluggable and your plugins before using this driver. use HTML::Template::Pluggable; use HTML::Template::Plugin::Dot;
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 \*(C`AnyTemplate\*(C' drivers are designed to be used the same way. For general usage instructions, see the documentation of CGI::Application::Plugin::AnyTemplate.
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 \*(C`embed_tag_name\*(C' must consist of numbers, letters and underscores (\*(C`_\*(C'), and must not begin with a number.
The HTMLTemplatePluggable driver accepts the following config parameters:
The name of the tag used for embedding components. Defaults to \*(C`cgiapp\*(C'.
If \*(C`auto_add_template_extension\*(C' is true, then CGI::Application::Plugin::AnyTemplate will append the value of \*(C`template_extension\*(C' to \*(C`filename\*(C'. By default the \*(C`template_extension\*(C' is \*(C`.html\*(C'.
This feature is now deprecated and will be removed in a future release. If this config parameter is true, then HTMLTemplatePluggable will copy all of the webapp's query params into the template using HTML::Template's \*(C`associate\*(C' mechanism: my $driver = HTML::Template::Pluggable->new( associate => $self->query, ); By default \*(C`associate_query\*(C' is false. If you provide an \*(C`associate\*(C' config parameter of your own, that will disable the \*(C`associate_query\*(C' functionality.
All other configuration parameters are passed on unchanged to HTML::Template.
The \*(C`required_modules\*(C' function returns the modules required for this driver to operate. In this case: HTML::Template.
Initializes the \*(C`HTMLTemplate\*(C' driver. See the docs for \*(C`CGI::Application::Plugin::AnyTemplate::Base\*(C' for details.
Fills the \*(C`HTML::Template::Pluggable\*(C' object with \*(C`$self->param\*(C' replacing any magic \*(C`*embed*\*(C' tags with the content generated by the appropriate runmodes. Returns the output of the filled template as a string reference. See the docs for \*(C`CGI::Application::Plugin::AnyTemplate::Base\*(C' for details.
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
Michael Graham, \*(C`<[email protected]>\*(C'
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.