Scroll to navigation

CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplateExpr(3pm) User Contributed Perl Documentation CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplateExpr(3pm)

NAME

CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplateExpr - HTML::Template::Expr driver to AnyTemplate

DESCRIPTION

This is a driver for CGI::Application::Plugin::AnyTemplate, which provides the implementation details specific to rendering templates via the HTML::Template::Expr 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::Expr)

Syntax

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

    <TMPL_VAR EXPR="CGIAPP_embed('some_run_mode', param1, param2, 'literal string3')">

This can be overridden by the following configuration variables:

    embed_tag_name       # default 'CGIAPP_embed'

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

    embed_tag_name       '__ACME_render'

Then the embedded component tag will look like:

    <TMPL_VAR EXPR="__ACME_render('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::HTMLTemplateExpr driver accepts the following config parameters:

The name of the tag used for embedding components. Defaults to "CGIAPP_embed".
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".
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::HTMLTemplateExpr will copy all of the webapp's query params into the template using HTML::Template::Expr's "associate" mechanism:

    my $driver = HTML::Template::Expr->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::Expr.

required_modules

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

DRIVER METHODS

Initializes the "HTMLTemplateExpr" driver. See the docs for CGI::Application::Plugin::AnyTemplate::Base for details.
Fills the HTML::Template::Expr object with "$self->param", and returns the output (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::HTMLTemplatePluggable
    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.

2020-10-26 perl v5.30.3