Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CGI::ApplicationCGI::AUsercContributediPerlnDocumentationiver::HTMLTemplate(3)

NAME
       CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplate -
       HTML::Template 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 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)
   Syntax
       The HTML::Template syntax for embedding components is:

	   <TMPL_VAR NAME="cgiapp_embed('some_run_mode', param1, param2, 'literal string3')">

       (Support	for parameter passing is limited.  See the note	on paramters
       below.)

       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	'***component***'

       Then the	embedded component tag will look like:

	   <TMPL_VAR NAME="***component***('some_run_mode')">

   Parameters
       Since HTML::Template doesn't support parameter passing in the template,
       the "HTMLTemplate" driver emulates this behaviour.

       The parameter list passed to the	embed subroutine is parsed before the
       template	is parsed.  Literal strings (strings enclosed in single	or
       double quotes) are passed verbatim to the target	run mode.  Params not
       enclosed	in quotes are looked up	in "$self->param"; the resulting
       literal or looked up values are passed to the target run	mode.
       Finally,	the return value of the	run mode (its output) is passed	as a
       parameter value to the template.

       Note that the param lookup scheme is somewhat simplistic.  For
       instance, it does not respect the scope of loops	or conditional
       constructs within the template.

       For proper parameter handling using HTML::Template-style	templates, use
       either the
       CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplateExpr or the
       CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplatePluggable
       driver instead.

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

       embed_tag_name
	   The name of the tag used for	embedding components.  Defaults	to
	   "cgiapp_embed".

       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::HTMLTemplate will
	   copy	all of the webapp's query params into the template using
	   HTML::Template's "associate"	mechanism:

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

perl v5.32.1	CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplate(3)

NAME | DESCRIPTION | EMBEDDED COMPONENT SYNTAX (HTML::Template) | CONFIGURATION | DRIVER METHODS | SEE ALSO | AUTHOR | COPYRIGHT & LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=CGI::Application::Plugin::AnyTemplate::Driver::HTMLTemplate&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help