Rechercher une page de manuel
HTML::Template::Extension::HEAD_BODY.3pm
Langue: en
Version: 2007-01-16 (mandriva - 01/05/08)
Section: 3 (Bibliothèques de fonctions)
NAME
HTML::Template::Extension::HEAD_BODY - Plugins for html fileSYNOPSIS
use HTML::Template::Extension;
my $text = qq | <HTML> <HEAD> <meta http-equiv="Content-Language" content="it"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>Test Page</title> <STYLE> body { font-family: Verdana, Arial, Helvetica; background-color: rgb(0,0,0); color: rgb(102,255,51); } </STYLE> <SCRIPT Language="Javascript"> function do_nothing { return void; } </SCRIPT> </HEAD> <BODY backgroud="#FFFFFF"> <H1>This is a template example...</H1> The sum between 1+1 is: <TMPL_VAR NAME="result"> </BODY> </HTML> |;
my $comp = new HTML::Template::Extension( scalarref => \$text, plugins=>["HEAD_BODY"], );
$comp->param('result' => 1+1);
print $comp->output;
# OUTPUT: # # <HTML> # <HEAD> # <SCRIPT Language="Javascript"> # function do_nothing { # return void; # } # </SCRIPT> # </HEAD> # <BODY backgroud="#FFFFFF"> # <H1>This is a template example...</H1> # The sum between 1+1 is: 2 # </BODY> # </HTML>
$comp->autoDeleteHeader(1); print $comp->output;
# OUTPUT: # # <H1>This is a template example...</H1> # The sum between 1+1 is: 2
print $comp->header;
# OUTPUT: # # <HTML> # <HEAD> # <meta http-equiv="Content-Language" content="it"> # <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> # <title>Test Page</title> # <STYLE> # body # { # font-family: Verdana, Arial, Helvetica; # background-color: rgb(0,0,0); # color: rgb(102,255,51); # } # </STYLE> # <SCRIPT Language="Javascript"> # function do_nothing { # return void; # } # </SCRIPT> # </HEAD> # <BODY backgroud="#FFFFFF">
print $comp->header_js;
# OUTPUT: # # <SCRIPT Language="Javascript"> # function do_nothing { # return void; # } # </SCRIPT>
print $comp->header_css;
# OUTPUT: # # <STYLE> # body # { # font-family: Verdana, Arial, Helvetica; # background-color: rgb(0,0,0); # color: rgb(102,255,51); # } # </STYLE>
print $comp->body_attributes;
# OUTPUT: # # backgroud="#FFFFFF"
print Data::Dumper::Dumper($comp->header_tokens);
# OUTPUT: # # $VAR1 = { # 'style' => [ # [ # '<STYLE>', # ' # body # { # font-family: Verdana, Arial, Helvetica; # background-color: rgb(0,0,0); # color: rgb(102,255,51); # } # ', # '</STYLE>' # ] # ], # 'meta' => [ # [ # '<meta http-equiv="Content-Language" content="it">', # ' # ', # undef # ], # [ # '<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">', # ' # ', # undef # ] # ], # 'title' => [ # [ # '<title>', # 'Test Page', # '</title>' # ] # ], # 'script' => [ # [ # '<SCRIPT Language="Javascript">', # ' # function do_nothing { # return void; # } # ', # '</SCRIPT>' # ] # ] # };
DESCRIPTION
This plugin add nothing syntax to HTML::Template but add some methods usefull for parsing html template in an environment where web pages are built embedding more little html templates (have you see my HTML::Puzzle CPAN module?).It add a costructor parameter ``autoDeleteHeader'' that, is set to 1, automatically remove html header returning only html code inside BODY tag.
If you have see HTML::Template::Extension::CSTART plugin this is equivalent to
<HTML> <HEAD> </HEAD> <BODY> <TMPL_CSTART> ... </TMPL_CSTART> </BODY> </HTML>
But more than this a ``header'' method will be added to return removed header.
It also have a ``js_header'' method to return javascript code present in the header.
AUTHOR
Bruni Emiliano, <info@ebruni.it>SEE ALSO
HTML::Template HTML::Template::Extension::DO_NOTHING HTML::Template::Extension::SLASH_VAR HTML::Template::Extension::CSTART HTML::Template::Extension::DOC HTML::Template::Extension::HEAD_BODY
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre