[%# # IMPORTANT NOTE # This documentation is generated automatically from source # templates. Any changes you make here may be lost. # # The 'docsrc' documentation source bundle is available for download # from http://www.template-toolkit.org/docs.html and contains all # the source templates, XML files, scripts, etc., from which the # documentation for the Template Toolkit is built. -%] [% META book = 'Modules' page = 'Plugin_CGI' %] [% WRAPPER toc; PROCESS tocitem title ="SYNOPSIS" subs = []; PROCESS tocitem title ="DESCRIPTION" subs = []; PROCESS tocitem title ="METHODS" subs = [ "params()" ]; PROCESS tocitem title ="AUTHOR" subs = []; PROCESS tocitem title ="VERSION" subs = []; PROCESS tocitem title ="COPYRIGHT" subs = []; PROCESS tocitem title ="SEE ALSO" subs = []; END %] [% WRAPPER section title="SYNOPSIS" -%]

        [% tt_start_tag %] USE CGI [% tt_end_tag %]
        [% tt_start_tag %] CGI.param('parameter') [% tt_end_tag %]

        [% tt_start_tag %] USE things = CGI [% tt_end_tag %]
        [% tt_start_tag %] things.param('name') [% tt_end_tag %]

        # see CGI docs for other methods provided by the CGI object

[%- END %] [% WRAPPER section title="DESCRIPTION" -%]

This is a very simple Template Toolkit Plugin interface to the CGI module. A CGI object will be instantiated via the following directive:

        [% tt_start_tag %] USE CGI [% tt_end_tag %]

CGI methods may then be called as follows:

        [% tt_start_tag %] CGI.header [% tt_end_tag %]
        [% tt_start_tag %] CGI.param('parameter') [% tt_end_tag %]

An alias can be used to provide an alternate name by which the object should be identified.

        [% tt_start_tag %] USE mycgi = CGI [% tt_end_tag %]
        [% tt_start_tag %] mycgi.start_form [% tt_end_tag %]
        [% tt_start_tag %] mycgi.popup_menu({ Name   => 'Color'
    			  Values => [ 'Green' 'Black' 'Brown' ] }) [% tt_end_tag %]

Parenthesised parameters to the USE directive will be passed to the plugin constructor: [% tt_start_tag %] USE cgiprm = CGI('uid=abw&name=Andy+Wardley') [% tt_end_tag %] [% tt_start_tag %] cgiprm.param('uid') [% tt_end_tag %]

[%- END %] [% WRAPPER section title="METHODS" -%]

In addition to all the methods supported by the CGI module, this plugin defines the following.

[% WRAPPER subsection title = "params()" -%]

This method returns a reference to a hash of all the CGI parameters. Any parameters that have multiple values will be returned as lists.

        [% tt_start_tag %] USE CGI('user=abw&item=foo&item=bar') [% tt_end_tag %]

        [% tt_start_tag %] CGI.params.user [% tt_end_tag %]            # abw
        [% tt_start_tag %] CGI.params.item.join(', ') [% tt_end_tag %] # foo, bar

[%- END %] [%- END %] [% WRAPPER section title="AUTHOR" -%]

Andy Wardley <abw@wardley.org>

[% ttlink('http://wardley.org/', 'http://wardley.org/') -%]

[%- END %] [% WRAPPER section title="VERSION" -%]

2.7, distributed as part of the Template Toolkit version 2.19, released on 27 April 2007.

[%- END %] [% WRAPPER section title="COPYRIGHT" -%]

      Copyright (C) 1996-2007 Andy Wardley.  All Rights Reserved.

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

[%- END %] [% WRAPPER section title="SEE ALSO" -%]

[% ttlink('Template::Plugin', 'Template::Plugin') -%], [% ttlink('CGI', 'CGI') -%]

[%- END %]