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

FreeBSD Manual Pages

  
 
  

home | help
Template::Magic::HTML(User Contributed Perl DocumentatTemplate::Magic::HTML(3)

NAME
       Template::Magic::HTML - HTML handlers for Template::Magic used in a
       HTML environment

VERSION	1.39
       Included	in Template-Magic 1.39 distribution.

       The latest versions changes are reported	in the Changes file in this
       distribution.

SYNOPSIS
	   $tm = new Template::Magic::HTML ;

	   # that means
	   $tm = new Template::Magic
		     markers	    => 'HTML' ,
		     value_handlers => 'HTML' ;

	   # that explicitly means
	   $tm = new Template::Magic
		     markers	    => [ qw( <!--{ / }--> ) ],
		     value_handlers => [ qw( SCALAR
					     REF
					     CODE
					     TableTiler
					     ARRAY
					     HASH
					     FillInForm	) ] ;

DESCRIPTION
       Template::Magic::HTML is	a collection of	handlers for Template::Magic
       useful when used	in a HTML environment. It adds a couple	of magic HTML
       specific	value handlers to Template::Magic default value	handlers. Just
       create and use the object as usual, to have a trasparent	interface to
       HTML::TableTiler	and HTML::FillInForm too.

       Other interesting readings about	how to use this	collection are in:

       o   Template::Magic (general documentation about	the Template-Magic
	   system)

       o   Template::Magic::Zone

HTML VALUE HANDLERS
       HTML
	   This	is the shortcut	for the	complete HTML collection of handlers
	   that	defines	the following value handlers:

	       SCALAR
	       REF
	       CODE
	       TableTiler
	       ARRAY
	       HASH
	       FillInForm

	   See "standard value handlers" in Template::Magic for	details	about
	   SCALAR REF CODE ARRAY and HASH handlers.

       TableTiler
	   Condition
	       a bidimensional array value

	   Action
	       magic generation	of HTML	table. No need to create and use a
	       HTML::TableTiler	object:	this handler will manage it magically.

	   Description
	       The bidimensional array:

		   $matrix_generating_a_table =	[ [1..3],
						  [4..6],
						  [7..9] ];

	       The template could be as	simple as a simple label with the same
	       identifier of the bidimensional array:

		   <p>paragraph	text</p>
		   <!--{matrix_generating_a_table}-->
		   <p>other paragraph</p>

	       so the output will be a generic table including the array data:

		   <p>paragraph	text</p>
		   <table>
		   <tr>
		       <td>1</td>
		       <td>2</td>
		       <td>3</td>
		   </tr>
		   <tr>
		       <td>4</td>
		       <td>5</td>
		       <td>6</td>
		   </tr>
		   <tr>
		       <td>7</td>
		       <td>8</td>
		       <td>9</td>
		   </tr>
		   </table>
		   <p>paragraph	text</p>

	       or the template could be	a complete table Tile included in a
	       block with the same identifier of the bidimensional array, and
	       with the	optional ROW and COL TableTiler	modes, passed as label
	       attributes:

		   <p>paragraph	text</p>
		   <!--{matrix_generating_a_table H_TILE V_TILE}-->
		   <table border="1" cellspacing="2" cellpadding="2">
		   <tr>
		       <td><b><i>?</i></b></td>
		       <td>?</td>
		   </tr>
		   <tr>
		       <td>?</td>
		       <td><b><i>?</i></b></td>
		   </tr>
		   </table>
		   <!--{/matrix_generating_a_table}-->
		   <p>other paragraph</p>

	       so the output will be a complete	tiled table including the
	       array data:

		   <p>paragraph	text</p>
		   <table border="1" cellspacing="2" cellpadding="2">
		   <tr>
		       <td><b><i>1</i></b></td>
		       <td>2</td>
		       <td><b><i>3</i></b></td>
		   </tr>
		   <tr>
		       <td>4</td>
		       <td><b><i>5</i></b></td>
		       <td>6</td>
		   </tr>
		   <tr>
		       <td><b><i>7</i></b></td>
		       <td>8</td>
		       <td><b><i>9</i></b></td>
		   </tr>
		   </table>
		   <p>paragraph	text</p>

	       See HTML::TableTiler for	details	about this module.

	       Note: if	your template don't need this specific handler you can
	       avoid its loading by explicitly omitting	it:

		   $tm = new Template::Magic::HTML
			     value_handlers => [ qw( SCALAR
						     REF
						     CODE
						     ARRAY
						     HASH
						     FillInForm	) ] ;

	       Warning:	since this handler checks for a	bidimensional ARRAY,
	       it must be checked BEFORE the ARRAY value handler in order to
	       work.

       FillInForm
	   Condition
	       a CGI query object value	(or by a blessed object	that has a
	       param() method)

	   Action
	       magic fill in of	a HTML form with the parameter in the CGI
	       object

	   Description
	       The CGI object in your code:

		   $my_query = new CGI;

	       If you want to fill a form with the param in the	$my_query,
	       just transform the form into a block giving it the same
	       identifier.

		   <!--{my_query}-->
		   <form action="my.cgi">
		   ...
		   </form>
		   <!--{/my_query}-->

	       One useful application of this handler is when a	user submits
	       an HTML form without filling out	a required field. FillInForm
	       handler will magically redisplay	the form with all the form
	       elements	(input,	textarea and select tags) filled with the
	       submitted info ($my_query), without any other statement in your
	       code. (No need to create	and use	a HTML::FillInForm object:
	       this handler will manage	it magically).

	       You can use this	handler	to fill	the form with default values
	       too, To do this,	just create a new query	object and fill	it
	       with the	default	param that you want in the form:

		   $query = new	CGI;
		   $query->param( name	  => 'John',
				  surname => 'Smith', ...);

	       You can pass an array of	ignore_fields (see HTML::FillInForm
	       for details) by using the attributes like this:

		   <!--{my_query ignore_fields => [ 'prev', 'next'] }-->
		   <form action="my.cgi">
		   ...
		   </form>
		   <!--{/my_query}-->

	       See HTML::FillInForm for	details	about this module.

	       Note: if	your template don't need this specific handler you can
	       avoid its loading by explicitly omitting	it:

		   $tm = new Template::Magic::HTML
			     value_handlers => [ qw( SCALAR
						     REF
						     CODE
						     TableTiler
						     ARRAY
						     HASH ) ] ;

SEE ALSO
       o   Template::Magic

       o   Template::Magic::Zone

       o   HTML::TableTiler

       o   HTML::FillInForm

SUPPORT
       Support for all the modules of the Template Magic System	is via the
       mailing list. The list is used for general support on the use of	the
       Template::Magic,	announcements, bug reports, patches, suggestions for
       improvements or new features. The API to	the Magic Template System is
       stable, but if you use it in a production environment, it's probably a
       good idea to keep a watch on the	list.

       You can join the	Template Magic System mailing list at this url:

       <http://lists.sourceforge.net/lists/listinfo/template-magic-users>

AUTHOR and COPYRIGHT
       A(C) 2004-2005 by Domizio Demichelis (<http://perl.4pro.net>)

       All Rights Reserved. This module	is free	software. It may be used,
       redistributed and/or modified under the same terms as perl itself.

POD ERRORS
       Hey! The	above document had some	coding errors, which are explained
       below:

       Around line 278:
	   Non-ASCII character seen before =encoding in	'A(C)'.	Assuming
	   CP1252

perl v5.24.1			  2006-09-15	      Template::Magic::HTML(3)

NAME | VERSION 1.39 | SYNOPSIS | DESCRIPTION | HTML VALUE HANDLERS | SEE ALSO | SUPPORT | AUTHOR and COPYRIGHT | POD ERRORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Template::Magic::HTML&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help