GuideSmarty

Voici la première version du guide Smarty, le regroupement de la documentation concernant Smarty contenue dans le dossier /module/pnrender/plugins/



        add_additional_header
        allowedhtml
        closetable2
        closetable
        languagelist
        modstyleslist
        opentable2
        opentable
        pager
        pagerabc
        pnbannerdisplay
        pnblock
        pnblockgetinfo
        pnblockshow
        pnconfiggetvar
        pndebug
        pngetbaseurl
        pngetcurrenturi
        pngethost
        pngetstatutmsg
        pnimg
        pnmanuallink
        (modifier.)htmlspecialchars
        (modifier.)pndate_format
        (modifier.)pnml
        (modifier.)pnmodcallhooks
        (modifier.)pnvarcensor
        (modifier.)pnvarprepfordisplay
        (modifier.)pnvarprepforstore
        (modifier.)pnvarprephtmldisplay



add_additional_header

fonction:
Ajoute une information entre les balises <head></head>
exemple:
<!--[add_additional_header header='<title>This is the title</title>']-->
<!--[add_additional_header header=$title]-->


allowedhtml

fonction:
Affiche les balises html disponibles
paramètres:
assign: variable pouvant être définie avec les différentes informations en sortie.
exemple:
<!--[allowedhtml]-->


closetable2

fonction:
code définissant la fermeture de la table2 définie dans theme.php
exemple:
<!--[closetable2]-->


closetable

fonction:
code définissant la fermeture de la table définie dans theme.php
exemple:
<!--[closetable]-->


languagelist

fonction:
Affiche un menu déroulant permettant de choisir une langue parmi celles disponibles
paramètres:
assign: variable pouvant être définie avec les différentes informations en sortie.
name: Nom du contrôle
selected: Langue pré sélectionnée
installed: if set only show languages existing in languages folder ???
exemple:
<!--[languagelist name=language selected=eng]-->


modstyleslist

fonction:
Affiche un menu déroulant des différentes feuilles de styles disponibles pour un module.
paramètres:
modname Le nom du module correspondant à ce choix de feuille de style
assign: variable pouvant être définie avec les différentes informations en sortie.
name: Nom du contrôle.
selected: Valeur pré sélectionnée
exemple:
<!--[modstyleslist name=modulestylesheet selected=navtabs.css]-->


opentable2

fonction:
code définissant l'ouverture de la table2 définie dans theme.php
exemple:
<!--[opentable2]-->


opentable

fonction:
code définissant l'ouverture de la table définie dans theme.php
exemple:
<!--[opentable]-->


pager

fonction:
créez un résultat de pagination pour pouvoir passer en revue de longues listes
paramètres:
mixed $rowcount nombre total des articles à paginer dans l'intervalle (s'il y a un tableau=>nombre de lignes)
string $show 'page' - pour montrer des numéros de page, 'record' - pour afficher les numéros d'enregistrements (par defaut: records)
int $limit nombre d'éléments par page (si <0 pas de limite)
string $posvar nom de la variable qui contient les données de position, egal à "offset"
string $forwardvars Liste de point-virgule de virgule ou espace,listes de GET et POST des variables pour expédier dans les liens de pagineur. Si non-utilisé: toutes les variables sont expédiées.
string $txt_first sur la première page, n'imprimez pas tous les numéros de pages, juste ce texte. Si cet ensemble est vide, copie tous les numéros de page.
string $img_first sur la première page, n'imprimez pas tous les numéros de pages, juste cette image. Si cet ensemble est vide, copie tous les numéros de page.
boolean $no_first Imprime toute les pages, ne commence pas par txt_firts, équivaut à txt_first défini vide.
string $txt_prev texte pour aller à la page précédente
string $img_prev image pour aller à la page précédente
string $txt_next texte pour aller à la page suivante
string $img_next image pour aller à la page suivante
string $txt_pos position du texte: 'top', 'bottom', 'middle/side'
string $class_num classe pour les liens: (tags <a>)
string $class_numon classe pour la page active
string $class_text classe pour le texte
string $separator chaine de caractères à mettre entre les numéros de page exemple:"&nbsp;-&nbsp;" donne 1&nbsp;-&nbsp;2&nbsp;-&nbsp;3
int $firstpos Numéro d'enregistrement de la première position
int $shift Décalez les valeurs enregistrées avec ceci (de manière générale, les pages enregistrées commencent à 0 mais affichent 1!)
exemple:
<--[pager show="page" rowcount=$pager.numitems limit=$pager.itemsperpage posvar=startnum shift=1]-->


pagerabc

fonction:
Affiche un menu avec l'ordre alphabétique
paramètres:
string $posvar name of the variable that contains the position data, eg "letter"
cvs $forwardvars comma- semicolon- or space-delimited list of POST and GET variables to forward in the pager links. If unset, all vars are forwarded.
cvs $additionalvars comma- semicolon- or space-delimited list of additional variable and value pairs to forward in the links. eg "foo=2,bar=4"
string $class_num class for the pager links (<a> tags)
string $class_numon class for the active page
string $separator string to put between the letters, eg "|" makes | A | B | C | D |
string $printempty print empty sel ('-')
string $lang langue
array $names values to select from (array or csv)
string $skin use predefined values (hu - hungarian ABC)
exemple:
<!--[pagerabc posvar="abc" class_num="dl" class_numon="header" separator=" &nbsp;-&nbsp; " names="A,B;C,D;E,F;G,H;I,J;K,L;M,N,O;P,Q,R;S,T;U,V,W,X,Y,Z"]--> donne
<span class="pager">
<a class="header" href="index.php?module=Example&amp;abc=A,B">&nbspA,B
</a> &nbsp;-&nbsp; <a class="dl" href="index.php?module=Example&amp;abc=C,D">&nbspC,D
</a> &nbsp;-&nbsp; <a class="dl" href="index.php?module=Example&amp;abc=E,F">&nbspE,F
</a> &nbsp;-&nbsp; <a class="dl" href="index.php?module=Example&amp;abc=G,H">&nbspG,H
</a> &nbsp;-&nbsp; <a class="dl" href="index.php?module=Example&amp;abc=I,J">&nbspI,J
</a> &nbsp;-&nbsp; <a class="dl" href="index.php?module=Example&amp;abc=K,L">&nbspK,L
</a> &nbsp;-&nbsp; <a class="dl" href="index.php?module=Example&amp;abc=M,N,O">&nbspM,N,O
</a> &nbsp;-&nbsp; <a class="dl" href="index.php?module=Example&amp;abc=P,Q,R">&nbspP,Q,R
</a> &nbsp;-&nbsp; <a class="dl" href="index.php?module=Example&amp;abc=S,T">&nbspS,T
</a> &nbsp;-&nbsp; <a class="dl" href="index.php?module=Example&amp;abc=U,V,W,X,Y,Z">&nbspU,V,W,X,Y,Z
</a></span>


pnbannerdisplay

fonctions: Affiche une bannière
paramètres:
id: identifiant du groupe de bannière défini dans le module bannières
assign: variable pouvant être définie avec les différentes informations en sortie.
exemple:<!--[pnbannerdisplay id=0]-->


pnblock

fonctions: affiche un bloc PostNuke
paramètres:
bid identifiant du bloc à afficher
name nom du bloc à afficher
title Changement du titre du bloc
position Changement de sa position (l,c,r)
assign variable pouvant être définie avec les différentes informations en sortie.
exemple:<!--[pnblock name="mon_block" bid="6"]-->


pnblockgetinfo

fonctions: obtient une variable de bloc
paramètres:
bid: l'identifiant du bloc
name: Si définit le nom du paramètre pour obtenir autrement le nom du bloc assigné au template
assign: variable pouvant être définie avec les différentes informations en sortie.
exemple:<!--[pnblockinfo bid="5"]-->


pnblockshow

fonctions: Affiche le bloc à partir d'un tableau ou d'un blockid
paramètres:
module: paramètre pouvant permettre l'affichage du module
blockname: paramètre pouvant permettre l'affichage du module
block: paramètre pouvant permettre l'affichage du module
assign: variable pouvant être définie avec les différentes informations en sortie.
exemple:<!--[pnblockshow module="mon_block"]-->


pnconfiggetvar

fonctions: récupère une variable de configuration
paramètres:
name: Nom de la variable de configuration à obtenir
assign: variable pouvant être définie avec les différentes informations en sortie.
exemple:<!--[pnconfiggetvar name="sitename"]-->


pndebug

fonctions: affiche une fenêtre de déboguage
paramètres:
exemple:<!--[pndebug]-->


pngetbaseurl

fonctions: retourne l'url de base du site
paramètres:
assign: variable pouvant être définie avec les différentes informations en sortie.
exemple:<!--[pngetbaseurl]-->


pngetcurrenturi

fonctions: retourne l'url du fichier courant
paramètres:
assign: variable pouvant être définie avec les différentes informations en sortie.
exemple:<!--[pngetcurrenturi]-->


pngethost

fonctions: retourne le nom de domaine du site
paramètres:
assign: variable pouvant être définie avec les différentes informations en sortie.
exemple:<!--[pngethost]-->


pngetstatutmsg

fonctions: fonction pour obtenir un message de statut
paramètres:
assign: variable pouvant être définie avec les différentes informations en sortie.
style, class: If set, the status message is being put in a div tag with the respective attributes
tag: spécifie si on désire une balise span ou div
exemple:
<!--[pngetstatusmsg|pnvarprephtmldisplay]-->
<!--[pngetstatusmsg |pnvarprephtmldisplay]-->
<!--[pngetstatusmsg class="statusmessage" tag="span"|pnvarprephtmldisplay]-->


pnimg

fonctions: permet un accès facile à une image.
paramètres:
src: Le nom de l'image
modname: le nom d'un module (defaut: le module courrant)
width, height: Si définit les largeur et hauteurs de l'image en sortie
alt: Si non défini, une chaine vide est définie
altml: If true then alt string is assumed to be a ML constant
title: Si non défini, une chaine vide est définie
titleml: If true then title string is assumed to be a ML constant
assign: variable pouvant être définie avec les différentes informations en sortie.
optional Est défini si le plugin ne peut retourner un message d'erreur, si l'image n'est pas trouvée
default Est défini quand une image par defaut quand l'image ne peut être trouvée (Note: chemin complet requis)
tous les paramètres mis, sont enregistrés dans le plugin.
exemple:
<!--[pnimg src="heading.gif" ]--> donne <!--[pnimg src="heading.gif" ]-->
<!--[pnimg src="heading.gif" width="100" border="1" alt="foobar" ]--> donne <img src="modules/Example/pnimages/eng/heading.gif" width="100" border="1" alt="foobar" />

<!--[pnimg src="heading.gif" assign="myvar"]-->
<!--[$myvar.src]--> donne modules/Example/pnimages/eng/heading.gif
<!--[$myvar.width]--> donne 261
<!--[$myvar.imgtag]--> donne <img src="modules/Example/pnimages/eng/heading.gif" alt="" width="261" height="69" />


pnmanuallink

fonctions: crée un lien vers le manuel
paramètres:
manual: nom du fichier manuel (manuel.html si non défini)
chapter: une ancre dans le fichier manuel pour y arriver
newwindow: ouvre le manuel dans une nouvelle fenêtre, utilise javascript
width: largeur de la fenêtre, si newwindows est défini (défaut: 600)
height: hauteur de la fenêtre, si newwindows est défini (défaut: 400)
title: nom de la nouvelle fenêtre, si newwindows est défini (par défaut: modulename)
class: classe utilisée pour le tag <a>
assign: variable pouvant être définie avec les différentes informations en sortie. ( array('url', 'link'))
exemple:
<!--[pnmanuallink newwindow=1 width=400 height=300 title=rtfm ]-->

(modifier.)htmlspecialchars

fonctions: Modificateur smarty servant à préparer une varaible pour l'affichage
en convertissant les caractères spéciaux en entités HTML
paramètres:

  • @param array $string le contenu à transformer
  • @return string l'affichage modifié

(modifier.)pndate_format

fonctions: Modificateur smarty servant au formatage de la date via strftime selon la configuration local dans postnuke.
paramètres:*

@param string $string entrée de la date

  • @param string format format strftime pour affichage
  • @param string $default_date date part defaut si $string est vide
  • @return string l'affichage modifié
  • @uses smarty_make_timestamp()

(modifier.)pnml

fonctions: Modificateur smarty servant à la conversion d'une définition de langage en chaine de caractères

Ce modificateur convertit une définition de langage (présentement a contenu défini e.g. _MYCONST) en une chaine traitée par les constantes de langue
exemple: <!--[$MyVar?|pnml]-->

(modifier.)pnmodcallhooks

fonctions: Modificateur smarty servant à l'aplication de routine de tranformatiom.

Ce modficateur va utiliser les routines de transformation pour les modules correspondants (tel que Autlinks, bbclick et autres)

Variable paramètres:
- modname: le nom connu du module appelant; passé à la fonction de routine dans "extrainfo array"
exemple: <!--[$MyVar?|pnmodcallhooks]-->

(modifier.)pnvarcensor

fonctions:
Modificateur smarty servant à écarter les mots censurés

Ce modificateur examine le contenu de la variable passée pour les mots qui sont considérés offensant ou non autorisés. Ces mots *sont remplacés avec des astérixes pour montrer que des mots ont été enlevés.
Ce modificateur essaye d'être intelligent dans sa tentative d'enlévement des mots censurés, en évitant de censurer ces mots quand ils font partie d'une autre mot plus grand.
Ce modificateur emploie les informations fournies dans la variable (?) de configuration 'CensorList? ' comme matrice des mots à censurer. Il recherche également * les dérivations commune de ces mots qui sont utilisés afin d'éviter la censure. Le système est également insensible à la casse.
Les effets de la censure devront être considérés avec soin, et si elle doit être appliquée à l'information qui est entrée par l'utilisateur ou s'il est être utilisée dans des cas bien spécifiques.
Ce modificateur sera abandonnée dans de futures versions, car pnVarCensor va être déplacé pour devenir une routine de transformation.
exemple: <!--[$MyVar?|pnvarcensor]-->

(modifier.)pnvarprepfordisplay

fonctions:
Modificateur smarty servant à la préparation de variable pour affichage

Ce modificateur effectue les escaping appropriés sur des caractères de facon à ce que quand ils sont affichés dans une page HTML, la chaine de caractère exacte est affichée.

L'utilisation multiple de ce modificateur est cumulative et non réversible. Il est recommandé que les variables retournées par ce modificateur ne soient utilisées que pour l'affichage de résultats et ensuite "discarded".
exemple: <!--[$MyVar|pnvarprepfordisplay]-->

(modifier.)pnvarprepforstore

fonctions:
Modificateur smarty qui prépare une variable pour la sauvegarde (stockage?) dans une base de donnée.

Ce modificateur effectue les "escaping" de caractères tels que la chaine de caractère exacte soit sauvegardée lors de son inclusion dans la base de donnée.

paramètres:
param array $string le contenue à transformer
return string "l'output" modifié
exemple:
<!--[$MyVar|pnvarprepforstore]-->

(modifier.)pnvarprephtmldisplay

fonctions:
Modificateur smarty qui préparer une variable pour l'affichage, tout en préservant certaines balises HTML

Ce modificateur effectue un "escaping" des caractères tels que lors de l'affichage d'une page HTML la chaine de caractère exacte est affichée à l'exception de certaines balises définies par l'administrateur qui sont laissées telles quelles à des fins d'affichage.

Ce modificateur doit être utilisé avec grand soin car il permet l'affichage de certaines balises HTML
les balises HTML qui vont être affichées sont celles définies dans la variable de configuration AllowableHTML? qui est configuré "on a per sintance basis" par l'administrateur du site.

L'utilisation multiple de ce modificateur est cumulative et non réversible.
Il est recommandé que les variables rendues par ce modificateur ne soient utilisées que pour afficher les résultats et "then discarded."
exemple:
<!--[$MyVar|pnvarprephtmldisplay]-->