NAME

CGI::TemplateHTML 2.84 - Extension Perl pour gérer des modèles de documents


SYNOPSIS

modele.html
<html>
<body>
<!-- #BEGINTABLE table4 -->
<!-- #BEGINZONE var1 -->Variable 1 : ##var1##<!-- #ENDZONE var1 -->
<!-- #BEGINZONE zone3 --> -- separateur -- <!-- #ENDZONE zone3 --> ##var2##
<!-- #ENDTABLE table4 -->
</body>
</html>

programme.pl
use CGI::TemplateHTML;
my $tpl=new CGI::TemplateHTML();
$tpl->setFile('modele.html');
$tpl->setVar('var1','value1');
$tpl->setVar('var2','value2');
$tpl->setVar('zone3');
$tpl->dumpTableLine('table4');
print $tpl->page();
$tpl->freeMem();


DESCRIPTION

La librairie CGI::TemplateHTML est dediée à la gestion de modèles de page HTML. Elle permet de separer totalement le code perl définissant les traitements des donnees, du HTML definissant l'affichage des donnees.

La mise en oeuvre de la librairie se fait en cinq etapes :

Etape 1 : Initialisation - configuration

Il convient tout d'abord de déclarer l'utilisation du module CGI::TemplateHTML puis de creer un objet instance de type TemplateHTML

 use CGI::TemplateHTML;
 my $tpl=new CGI::TemplateHTML();

Optionnellement, on peut ensuite activer ou desactiver plusieurs fonctions de la librairie.

La librairie met à la dispostion du programmeur les options suivantes :

Il convient de noter que les états par defaut de ces differentes fonctions dependent de la façon dont a été compilé le module CGI::TemplateHTML. La methode dumpStructure() permet d'avoir plus d'informations sur ces états par défaut.

Etape 2 : Ouverture du modele de page

Cette étape est très simple : il suffit d'utiliser la méthode setFile pour indiquer à la librairie le chemin d'accès au fichier modèle (``template'') à utiliser

Exemple : $tpl->setFile(``modeles/modeles.html'');

Il est aussi possible de traiter directement une chaine de caractères comme modèle. On utilise alors la méthode parse(``chaine'')

Exemple : $tpl->parse(``Erreur no ##err##'');

Il est enfin possible de charger completement un fichier binaire. On ne pourra alors que le reemettre directement en étape 4, sans passer par l'étape 3. On utilise pour cela la méthode setBinaryFile qui prend comme argument le chemin d'accès au fichier binaire.

Exemple : $tpl->setBinaryFile(``images/im.gif'');

Etape 3 : Définition de variables, zones, tables, récursions

Lorsque l'on ne travaille pas sur un fichier binaire, on travaille ensuite sur les contenus dynamiques. Il existe plusieurs types de contenus possibles dans le modèle :

Etape 4 : Récupération du contenu généré

Une fois tous les contenus dynamiques générés, on demande à la librairie de nous fournir le contenu généré ou une vision de celui-ci. Plusieurs méthodes sont à notre disposition :

Etape 5 : Libération mémoire

Enfin, il convient de libérer la mémoire utilisée par le module.

 $tpl->freeMem();


AUTHOR

Cedric LECOURT, ILIAD, clecourt@iliad.fr, version 2.84 du 30/06/2003.


SEE ALSO

perl(1).