Table des matières

Balise Tmpl

<patTemplate:tmpl>
  Pat is my friend.
</patTemplate:tmpl>

C’est la balise qui commence le template, tout le texte qui suit sera ajouté au template jusqu’à la balise qui ferme.

Les attributs

Les attributs suivants sont supportés:

name (facultatif mais habituellement utilisé)

Cet attribut inscrit le nom du template. Le nom doit être unique car il sera utilisé à travers différentes fonctions de l’API. Si le nom de l’attribut est omis un nom unique sera généré automatiquement en interne.

<patTemplate:tmpl name="body">
  This is my site.
</patTemplate:tmpl>

type (facultatif)

Cet attribut définit le type de template et peut contenir l’une des valeurs suivantes:

Standard

(c’est la valeur par défaut si le type est omis)

<patTemplate:tmpl name="body" type="standard">
  This is a vanilla flavoured template.
</patTemplate:tmpl>

OddEven

Les templates OddEven doivent avoir 2 sous-templates avec conditions pour le Odd et le Even. Ces sous-templates seront appelés lorsque le template sera répété.

<patTemplate:tmpl name="row" type="oddeven">
    <patTemplate:sub condition="__odd">
<div style="background-color:#cccccc">{VALUE}</div>
    </patTemplate:sub>
    <patTemplate:sub condition="__even">
<div style="background-color:#ffffff">{VALUE}</div>
    </patTemplate:sub>
</patTemplate:tmpl>

Modulo

Un template modulo permet les définitions d’un nombre quelconque de sous-templates pour les listes alternées. Ceci est semblable au template OddEven (modulo 2).

<patTemplate:tmpl name="row" type="modulo" modulo="3">
    <patTemplate:sub condition="0">
<div style="background-color:red">{VALUE}</div>
    </patTemplate:sub>
    <patTemplate:sub condition="1">
<div style="background-color:blue">{VALUE}</div>
    </patTemplate:sub>
    <patTemplate:sub condition="2">
<div style="background-color:green">{VALUE}</div>
    </patTemplate:sub>
</patTemplate:tmpl>

Il y a 2 variables systèmes qui sont à disposition pour le type modulo:

* PAT_MODULO Ceci est le numéraux du modulo pour l’actuel sous-template. Dans l’exemple ci-dessus, c’était 1, 2 et enfin 0.

* PAT_MODULO_REP C’est le nombre de boucle ou le nombre de fois qu’un template a été répété. Commence à 1.

Condition

Les templates condition peuvent contenir de nombreux sous-templates. Celà émule l’utilisation d’un switch en PHP.

SimpleCondition

Les templates simplecondition peuvent définir différentes variables qui doivent être initialisées afin que le template soit affiché. Il ne contient AUCUN sous-templates. Si toutes les variables sont initialisées le template sera visible autrement il sera caché.

Remarque: Si vous utilisez l’attribut requiredvars pour définir les variables qui doivent être initialisées, la liste des variables seras séparées par une virgule.

addSystemVars

Cet attribut permet d’ajouter des variables systèmes spéciales, comme le nombre de répétition d’un template. L’attribut peut prendre les valeurs suivantes:

Exemple:

<patTemplate:tmpl name="tmpl-1" addSystemVars="boolean">
    <strong>System-variables:</strong><br />
    
    PAT_LOOPS    : {PAT_LOOPS}<br />
    PAT_IS_FIRST : {PAT_IS_FIRST}<br />
    PAT_IS_LAST  : {PAT_IS_LAST}<br />
    PAT_IS_ODD   : {PAT_IS_ODD}<br />
    PAT_IS_EVEN  : {PAT_IS_EVEN}<br />
    PATTEMPLATE_VERSION : {PATTEMPLATE_VERSION}<br />
    <hr />
</patTemplate:tmpl>

autoclear

Si autoclear est initialisé à vrai, le template sera rafraichi à chaque affichages.

autoload

Permet d’inclure dynamiquement des templates.

Exemple:

$tmpl->readTemplatesFromInput( 'example.tmpl' );
$tmpl->setAttribute( 'main', 'src', 'example_include.tmpl' );
$tmpl->displayParsedTemplate();
 
<!-- dans le template -->
<mos:tmpl name="main" src="dynamic" autoload="off" parse="on" />

conditionvar (Obligatoire pour les templates de type condition)

Placé le nom de la variable qui est utilisée pour émulé l’état du switch.

Exemple: conditionvar=”NAME”

Vérifiez les variables des autres templates.

Depuis la version 2.4 de PatTemplate il est aussi possible d’utiliser la variable d’un autre template dans la condition de variables. Pour faire ceci, nous avons implémenté le dot syntaxe. Simple utilisation du conditionvar=”TEMPLATENAME.VARNAME” pour utiliser les variables de tous les templates dans conditionvar. Mais soyez attentif quand à l’utilisation des variables des templates qui sont à répétition comme le nombre d’itération d’un template qui est déjà utilisé.

requiredvars (Obligatoire pour les template de type simplecondition)

Celà peut être une liste de variables qui doivent être placées afin que le template soit affiché. Chaque variables doit être séparées par une virgule. Il est très utilisé si vous souhaitez afficher des messages d’erreurs si une ou plusieurs des variables n’étais pas initialisées. Avec la version 2.4 vous pouvez également utilisez le dot syntaxe pour vérifier si des variables d’autres templates sont initialisées.

Exemple: requiredvars=”NAME,STREET,ZIPCODE”

useglobals (facultatif)

Cet attribut peut être utilisé pour les templates de type condition ou simplecondition, afin de dire au PatTemplate que les variables globales devront être utilisées pour des conditions si la variable n’est pas initialisée en local.

L’attribut useglobals n’a pas besoin de valeur et ainsi peut être utilisé comme un flag.

Exemple: useglobals=”yes” ou simplement useglobals

loop (facultatif)

Celà force la répétition des Templates, même lorsqu’il n’existe pas de valeurs qui nécessitent une répétition.

Exemple: loop=”10”

visibility (facultatif)

Visibility peut être initialisé comme visible ou hidden (caché). Si c’est hidden, le template ne sera pas dans le buffer de sortie. Il peut être utilisé pour cacher ou afficher des messages d’erreurs, comme attribut il peut être changé en utilisant setAttribute (voir la documentation de l’API).

Exemple: visibility=”hidden”

placeholder (facultatif)

Ceci ne devrait être employer uniquement par des utilisateurs confirmés.

En plaçant un template dans un template, l’application vas extraire le HTML du template fils et le remplacer avec un certain placeholder (TMPL:templatename) pour identifier la position où il a été placé quand le template s’affiche. Avec cet attribut vous pouvez forcer votre propre placeholder ou dire à l’application de n’utiliser aucun placeholder (initialisez à rien).

Exemple: placeholder=”CONTENT”

parse (facultatif)

Voir src.

src (facultatif)

Utiliser un fichier externe comme contenu pour le template. Ceci doit être utilisé conjointement avec l’attribut parse=”on|off” pour dire à l’application si le fichier externe doit aussi être analysé (semblable aux entités externes en XML) ou si il contient son propre HTML qui à juste besoin d’être inclus.

unusedvars (facultatif)

Cet attribut est utilisé pour dire à l’application comment elle doit traiter les variables qui n’ont pas de valeurs assignées. Il peut avoir une des valeurs suivantes:

varscope (facultatif)

Ceci peut être utlisé pour importer des variables venant d’un autre template dans l’actuel. Dissons que vous avez un template pour une page entière et vous ajoutez toutes les variables de ce template. Quand le nouveau template sera inséré dans la page, les variables dans le template ne seront pas analysées tant que vous ne les ajoutez pas. C’est là où l’attribut varscope entre en jeux. Simplement placer varscope=”NOMDELAPAGE” dans la balise tmpl et les variables venant du premier template seront aussi disponibles dans le nouveau template.

whitespace (facultatif)

Explique à l’application comment elle doit traiter les espacements dans les templates (trim, ltrim, rtrim, keep). Elle vous permet de générer du rendu HTML sans aucune coupures de lignes ou d’arrêts de tablulation, pour les templates ceci contient tous les éléments du rendu.

Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki