WS and added revision tags

This commit is contained in:
didou
2004-05-23 15:44:59 +00:00
parent 7f504b740f
commit c060c07ab8
12 changed files with 872 additions and 853 deletions

View File

@@ -1,41 +1,41 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<!-- EN-Revision: 1.1 Maintainer: nobody Status: partial --> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<sect1 id="language.function.capture"> <sect1 id="language.function.capture">
<title>capture</title> <title>capture</title>
<para>
Capture est utilis<69> pour r<>cup<75>rer la sortie d'<27>l<EFBFBD>ments dans une variable
au lieu de les afficher. Tout contenu situ<74> entre {capture
name="foo"} et {/capture} est intercept<70> dans une variable dont le nom est
sp<73>cifi<66> dans l'attribut name. Le contenu captur<75> peut <20>tre utilis<69> dans
le template par l'interm<72>diaire de la variable sp<73>ciale $smarty.capture.foo
ou foo est la valeur de l'attribut name. Si vous ne donnez pas de valeur
<20> l'attribut name, alors "default" est utilis<69>. Toutes les commandes
{capture} doivent <20>tre utilis<69>es de paire avec {/capture}. Vous pouvez
imbriquer les demandes de captures.
</para>
<note>
<title>Note technique</title>
<para> <para>
Capture est utilis<69> pour r<>cup<75>rer la sortie d'<27>l<EFBFBD>ments dans une variable Smarty 1.4.0 - 1.4.4 pla<6C>ait les contenus captur<75>s dans une variable
au lieu de les afficher. Tout contenu situ<74> entre {capture appel<EFBFBD>e $return. Depuis Smarty 1.4.5, ce comportement <20> <20>t<EFBFBD> modifi<66> et
name="foo"} et {/capture} est intercept<70> dans une variable dont le nom est Smarty utilise maintenant l'attribut name en lieu et place.
sp<EFBFBD>cifi<EFBFBD> dans l'attribut name. Le contenu captur<75> peut <20>tre utilis<69> dans Veuillez donc mettre vos templates <20> jour selon cette r<>gle.
le template par l'interm<72>diaire de la variable sp<73>ciale $smarty.capture.foo
ou foo est la valeur de l'attribut name. Si vous ne donnez pas de valeur
<20> l'attribut name, alors "default" est utilis<69>. Toutes les commandes
{capture} doivent <20>tre utilis<69>es de paire avec {/capture}. Vous pouvez
imbriquer les demandes de captures.
</para> </para>
<note> </note>
<title>Note technique</title> <caution>
<para>
Smarty 1.4.0 - 1.4.4 pla<6C>ait les contenus captur<75>s dans une variable
appel<65>e $return. Depuis Smarty 1.4.5, ce comportement <20> <20>t<EFBFBD> modifi<66> et
Smarty utilise maintenant l'attribut name en lieu et place.
Veuillez donc mettre vos templates <20> jour selon cette r<>gle.
</para>
</note>
<caution>
<para>
Faites attention lorsque vous interceptez la sortie de commandes
<command>insert</command>. Si vous avez configur<75> le cache pour que ce
dernier soit actif, et que vous avez des commandes <command>insert</command>
suppos<6F>es s'ex<65>cuter dans un contenu en cache, ne tentez pas de capturer
ce contenu.
</para>
</caution>
<para> <para>
<example> Faites attention lorsque vous interceptez la sortie de commandes
<title>Capturer le contenu d'un template.</title> <command>insert</command>. Si vous avez configur<75> le cache pour que ce
<programlisting> dernier soit actif, et que vous avez des commandes <command>insert</command>
suppos<6F>es s'ex<65>cuter dans un contenu en cache, ne tentez pas de capturer
ce contenu.
</para>
</caution>
<para>
<example>
<title>Capturer le contenu d'un template.</title>
<programlisting>
<![CDATA[ <![CDATA[
{* nous ne voulons afficher une ligne que si cette derni<6E>re est activ<69>. *} {* nous ne voulons afficher une ligne que si cette derni<6E>re est activ<69>. *}
{capture name=banner} {capture name=banner}
@@ -49,10 +49,10 @@
</tr> </tr>
{/if} {/if}
]]> ]]>
</programlisting> </programlisting>
</example> </example>
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
mode: sgml mode: sgml

View File

@@ -1,78 +1,78 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<!-- EN-Revision: 1.1 Maintainer: nobody Status: partial --> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<sect1 id="language.function.config.load"> <sect1 id="language.function.config.load">
<title>config_load</title> <title>config_load</title>
<informaltable frame="all"> <informaltable frame="all">
<tgroup cols="5"> <tgroup cols="5">
<colspec colname="param" align="center" /> <colspec colname="param" align="center" />
<colspec colname="type" align="center" /> <colspec colname="type" align="center" />
<colspec colname="required" align="center" /> <colspec colname="required" align="center" />
<colspec colname="default" align="center" /> <colspec colname="default" align="center" />
<colspec colname="desc" /> <colspec colname="desc" />
<thead> <thead>
<row> <row>
<entry>Nom attribut</entry> <entry>Nom attribut</entry>
<entry>Type</entry> <entry>Type</entry>
<entry>Requis</entry> <entry>Requis</entry>
<entry>Defaut</entry> <entry>Defaut</entry>
<entry>Description</entry> <entry>Description</entry>
</row> </row>
</thead> </thead>
<tbody> <tbody>
<row> <row>
<entry>file</entry> <entry>file</entry>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry>Oui</entry> <entry>Oui</entry>
<entry><emphasis>n/a</emphasis></entry> <entry><emphasis>n/a</emphasis></entry>
<entry>Le nom du fichier de configuration <20> inclure</entry> <entry>Le nom du fichier de configuration <20> inclure</entry>
</row> </row>
<row> <row>
<entry>section</entry> <entry>section</entry>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry>Non</entry> <entry>Non</entry>
<entry><emphasis>n/a</emphasis></entry> <entry><emphasis>n/a</emphasis></entry>
<entry>Le nom de la section <20> charger</entry> <entry>Le nom de la section <20> charger</entry>
</row> </row>
<row> <row>
<entry>scope</entry> <entry>scope</entry>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry>non</entry> <entry>non</entry>
<entry><emphasis>local</emphasis></entry> <entry><emphasis>local</emphasis></entry>
<entry> <entry>
La fa<66>on dont la port<72>e des variables est d<>finie, soit La fa<66>on dont la port<72>e des variables est d<>finie, soit
local, parent ou global. local signifie que la variable est local, parent ou global. local signifie que la variable est
charg<EFBFBD>e dans le contexte du template. parent indique que charg<72>e dans le contexte du template. parent indique que
la variable est disponible tant dans le template qui la variable est disponible tant dans le template qui
l'a inclus que dans le template parent, ayant r<>alis<69> l'a inclus que dans le template parent, ayant r<>alis<69>
l'inclusion du sous template. global signifie que la variable l'inclusion du sous template. global signifie que la variable
est diponible dans tous les templates. est diponible dans tous les templates.
</entry> </entry>
</row> </row>
<row> <row>
<entry>global</entry> <entry>global</entry>
<entry>bool<EFBFBD>en</entry> <entry>bool<EFBFBD>en</entry>
<entry>Non</entry> <entry>Non</entry>
<entry><emphasis>No</emphasis></entry> <entry><emphasis>No</emphasis></entry>
<entry> <entry>
Si oui ou non les variables sont disponibles pour les Si oui ou non les variables sont disponibles pour les
templates parents, identique <20> scope=parent. templates parents, identique <20> scope=parent.
Note: Cet attribut est obsol<6F>te depuis l'apparition Note: Cet attribut est obsol<6F>te depuis l'apparition
de l'attribut scope, il est toutefois toujours support<72>. de l'attribut scope, il est toutefois toujours support<72>.
Si scope est d<>fini, global est ignor<6F>. Si scope est d<>fini, global est ignor<6F>.
</entry> </entry>
</row> </row>
</tbody> </tbody>
</tgroup> </tgroup>
</informaltable> </informaltable>
<para> <para>
Cette fonction est utilise<73> pour charger des variables de fichier Cette fonction est utilise<73> pour charger des variables de fichier
de configuration dans un template. Voir <link linkend="config.files"> de configuration dans un template. Voir <link linkend="config.files">
Fichiers de configuration</link> pour de plus amples informations. Fichiers de configuration</link> pour de plus amples informations.
</para> </para>
<example> <example>
<title>fonction config_load</title> <title>fonction config_load</title>
<programlisting> <programlisting>
<![CDATA[ <![CDATA[
{config_load file="colors.conf"} {config_load file="colors.conf"}
@@ -89,23 +89,23 @@
</body> </body>
</html> </html>
]]> ]]>
</programlisting> </programlisting>
</example> </example>
<para> <para>
Les fichiers de configuration peuvent contenir des sections. Les fichiers de configuration peuvent contenir des sections.
Vous pouvez charger des variables d'une section donn<6E>e avec le Vous pouvez charger des variables d'une section donn<6E>e avec le
nouvel attribut <emphasis>section</emphasis>. nouvel attribut <emphasis>section</emphasis>.
</para> </para>
<note> <note>
<para> <para>
Les <emphasis>sections des fichiers de configuration</emphasis> Les <emphasis>sections des fichiers de configuration</emphasis>
et la fonction native <emphasis>section</emphasis> n'ont rien en et la fonction native <emphasis>section</emphasis> n'ont rien en
commun, il s'av<61>re simplement qu'elles portent le m<>me nom. commun, il s'av<61>re simplement qu'elles portent le m<>me nom.
</para> </para>
</note> </note>
<example> <example>
<title>fonction config_load et section</title> <title>fonction config_load et section</title>
<programlisting> <programlisting>
<![CDATA[ <![CDATA[
{config_load file="colors.conf" section="client"} {config_load file="colors.conf" section="client"}
@@ -122,9 +122,9 @@
</body> </body>
</html> </html>
]]> ]]>
</programlisting> </programlisting>
</example> </example>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
mode: sgml mode: sgml

View File

@@ -1,78 +1,78 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<!-- EN-Revision: 1.1 Maintainer: nobody Status: partial --> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<sect1 id="language.function.foreach"> <sect1 id="language.function.foreach">
<title>foreach,foreachelse</title> <title>foreach,foreachelse</title>
<informaltable frame="all"> <informaltable frame="all">
<tgroup cols="5"> <tgroup cols="5">
<colspec colname="param" align="center" /> <colspec colname="param" align="center" />
<colspec colname="type" align="center" /> <colspec colname="type" align="center" />
<colspec colname="required" align="center" /> <colspec colname="required" align="center" />
<colspec colname="default" align="center" /> <colspec colname="default" align="center" />
<colspec colname="desc" /> <colspec colname="desc" />
<thead> <thead>
<row> <row>
<entry>Nom attribut</entry> <entry>Nom attribut</entry>
<entry>Type</entry> <entry>Type</entry>
<entry>Requis</entry> <entry>Requis</entry>
<entry>Defaut</entry> <entry>Defaut</entry>
<entry>Description</entry> <entry>Description</entry>
</row> </row>
</thead> </thead>
<tbody> <tbody>
<row> <row>
<entry>from</entry> <entry>from</entry>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry>oui</entry> <entry>oui</entry>
<entry><emphasis>n/a</emphasis></entry> <entry><emphasis>n/a</emphasis></entry>
<entry>Le nom du tableau <20> parcourir</entry> <entry>Le nom du tableau <20> parcourir</entry>
</row> </row>
<row> <row>
<entry>item</entry> <entry>item</entry>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry>Oui</entry> <entry>Oui</entry>
<entry><emphasis>n/a</emphasis></entry> <entry><emphasis>n/a</emphasis></entry>
<entry>Le nom de la variable "<22>l<EFBFBD>ment courant"</entry> <entry>Le nom de la variable "<22>l<EFBFBD>ment courant"</entry>
</row> </row>
<row> <row>
<entry>key</entry> <entry>key</entry>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry>Non</entry> <entry>Non</entry>
<entry><emphasis>n/a</emphasis></entry> <entry><emphasis>n/a</emphasis></entry>
<entry>Le nom de la variable repr<70>sentant la clef courante.</entry> <entry>Le nom de la variable repr<70>sentant la clef courante.</entry>
</row> </row>
<row> <row>
<entry>name</entry> <entry>name</entry>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry>Non</entry> <entry>Non</entry>
<entry><emphasis>n/a</emphasis></entry> <entry><emphasis>n/a</emphasis></entry>
<entry>Le nom de la boucle foreach, qui nous permettra <entry>Le nom de la boucle foreach, qui nous permettra
d'acc<63>der <20> ses propri<72>t<EFBFBD>s.</entry> d'acc<63>der <20> ses propri<72>t<EFBFBD>s.</entry>
</row> </row>
</tbody> </tbody>
</tgroup> </tgroup>
</informaltable> </informaltable>
<para> <para>
Les boucles <emphasis>foreach</emphasis> sont une alternative aux boucles Les boucles <emphasis>foreach</emphasis> sont une alternative aux boucles
<emphasis>section</emphasis>. Les boucles <emphasis>foreach</emphasis> <emphasis>section</emphasis>. Les boucles <emphasis>foreach</emphasis>
sont utilis<69>es pour parcourir des tableaux associatifs simples. sont utilis<69>es pour parcourir des tableaux associatifs simples.
La syntaxe des boucles <emphasis>foreach</emphasis> est bien plus simple La syntaxe des boucles <emphasis>foreach</emphasis> est bien plus simple
que celle des boucles <emphasis>section</emphasis>, mais en contrepartie, que celle des boucles <emphasis>section</emphasis>, mais en contrepartie,
elles ne peuvent <20>tre utilis<69>es que pour des tableaux associatifs simples. elles ne peuvent <20>tre utilis<69>es que pour des tableaux associatifs simples.
La balise <emphasis>foreach</emphasis> doit toujours <20>tre accompagn<67>e La balise <emphasis>foreach</emphasis> doit toujours <20>tre accompagn<67>e
de la balise <emphasis>/foreach</emphasis>. Les param<61>tres requis sont de la balise <emphasis>/foreach</emphasis>. Les param<61>tres requis sont
<emphasis>from</emphasis> et <emphasis>item</emphasis>. Le nom des boucles <emphasis>from</emphasis> et <emphasis>item</emphasis>. Le nom des boucles
foreach doit <20>tre compos<6F>s exclusivement de lettres, foreach doit <20>tre compos<6F>s exclusivement de lettres,
chiffres et underscores, selon vos pr<70>f<EFBFBD>rences. Les boucles chiffres et underscores, selon vos pr<70>f<EFBFBD>rences. Les boucles
<emphasis>foreach</emphasis> peuvent <20>tre imbriqu<71>es. <emphasis>foreach</emphasis> peuvent <20>tre imbriqu<71>es.
La variable <emphasis>from</emphasis> (g<>n<EFBFBD>ralement le tableau <20> La variable <emphasis>from</emphasis> (g<>n<EFBFBD>ralement le tableau <20>
parcourir) d<>termine le nombre de fois que <emphasis>foreach</emphasis> parcourir) d<>termine le nombre de fois que <emphasis>foreach</emphasis>
sera ex<65>cut<75>. <emphasis>foreachelse</emphasis> est ex<65>cut<75> si aucune sera ex<65>cut<75>. <emphasis>foreachelse</emphasis> est ex<65>cut<75> si aucune
valeur n'est pr<70>sente dans la variable donn<6E>e <20> l'attribut valeur n'est pr<70>sente dans la variable donn<6E>e <20> l'attribut
<emphasis>from</emphasis>. <emphasis>from</emphasis>.
</para> </para>
<example> <example>
<title>foreach</title> <title>foreach</title>
<programlisting> <programlisting>
{* Cet exemple affiche toutes les valeurs du tableau $custid *} {* Cet exemple affiche toutes les valeurs du tableau $custid *}
@@ -85,10 +85,10 @@ SORTIE:
id: 1000&lt;br&gt; id: 1000&lt;br&gt;
id: 1001&lt;br&gt; id: 1001&lt;br&gt;
id: 1002&lt;br&gt;</programlisting> id: 1002&lt;br&gt;</programlisting>
</example> </example>
<example> <example>
<title>foreach key</title> <title>foreach key</title>
<programlisting> <programlisting>
{* key contient la clef de chaque <20>l<EFBFBD>ment parcouru {* key contient la clef de chaque <20>l<EFBFBD>ment parcouru
@@ -113,7 +113,7 @@ portable: 3&lt;br&gt;
tel: 555-4444&lt;br&gt; tel: 555-4444&lt;br&gt;
fax: 555-3333&lt;br&gt; fax: 555-3333&lt;br&gt;
portable: 760-1234&lt;br&gt;</programlisting> portable: 760-1234&lt;br&gt;</programlisting>
</example> </example>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:

View File

@@ -1,21 +1,22 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="language.function.if"> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<title>if,elseif,else</title> <sect1 id="language.function.if">
<para> <title>if,elseif,else</title>
l'instruction if dans Smarty dispose de la m<>me flexibilit<69> que l'instruction <para>
PHP du m<>me nom, avec quelques fonctionnalit<69>s suppl<70>mentaires pour le l'instruction if dans Smarty dispose de la m<>me flexibilit<69> que l'instruction
moteur de template. Tous les <emphasis>if</emphasis> doivent <20>tre PHP du m<>me nom, avec quelques fonctionnalit<69>s suppl<70>mentaires pour le
utilis<69>s de pair avec un <emphasis>/if</emphasis>. moteur de template. Tous les <emphasis>if</emphasis> doivent <20>tre
<emphasis>else</emphasis> et <emphasis>elseif</emphasis> sont <20>galement utilis<EFBFBD>s de pair avec un <emphasis>/if</emphasis>.
des balises autoris<69>es. "eq", "ne","neq", "gt", "lt", "lte", "le", <emphasis>else</emphasis> et <emphasis>elseif</emphasis> sont <20>galement
"gte" "ge","is even","is odd", "is not even","is not odd","not","mod", des balises autoris<69>es. "eq", "ne","neq", "gt", "lt", "lte", "le",
"div by","even by","odd by","==","!=","&gt;", "&lt;","&lt;=","&gt;=" sont tous "gte" "ge","is even","is odd", "is not even","is not odd","not","mod",
des op<6F>rateurs conditionnels valides, et doivent obligatoirement <20>tre "div by","even by","odd by","==","!=","&gt;", "&lt;","&lt;=","&gt;=" sont tous
s<>par<61>s des autres <20>l<EFBFBD>ments par des espaces. des op<6F>rateurs conditionnels valides, et doivent obligatoirement <20>tre
</para> s<>par<61>s des autres <20>l<EFBFBD>ments par des espaces.
<example> </para>
<title>Instruction if</title> <example>
<title>Instruction if</title>
<programlisting> <programlisting>
{if $name eq "Fred"} {if $name eq "Fred"}
Bienvenue, Monsieur. Bienvenue, Monsieur.
@@ -78,7 +79,7 @@
{if $var is even by 3} {if $var is even by 3}
... ...
{/if}</programlisting> {/if}</programlisting>
</example> </example>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
@@ -99,4 +100,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -1,87 +1,88 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="language.function.include.php"> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<title>include_php</title> <sect1 id="language.function.include.php">
<informaltable frame="all"> <title>include_php</title>
<tgroup cols="5"> <informaltable frame="all">
<colspec colname="param" align="center" /> <tgroup cols="5">
<colspec colname="type" align="center" /> <colspec colname="param" align="center" />
<colspec colname="required" align="center" /> <colspec colname="type" align="center" />
<colspec colname="default" align="center" /> <colspec colname="required" align="center" />
<colspec colname="desc" /> <colspec colname="default" align="center" />
<thead> <colspec colname="desc" />
<row> <thead>
<entry>Nom attribut</entry> <row>
<entry>Type</entry> <entry>Nom attribut</entry>
<entry>Requis</entry> <entry>Type</entry>
<entry>Defaut</entry> <entry>Requis</entry>
<entry>Description</entry> <entry>Defaut</entry>
</row> <entry>Description</entry>
</thead> </row>
<tbody> </thead>
<row> <tbody>
<entry>file</entry> <row>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>file</entry>
<entry>oui</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>oui</entry>
<entry>Le nom du fichier PHP <20> inclure</entry> <entry><emphasis>n/a</emphasis></entry>
</row> <entry>Le nom du fichier PHP <20> inclure</entry>
<row> </row>
<entry>once</entry> <row>
<entry>bol<EFBFBD>en</entry> <entry>once</entry>
<entry>Non</entry> <entry>bol<EFBFBD>en</entry>
<entry><emphasis>true</emphasis></entry> <entry>Non</entry>
<entry>Inclure plusieurs fois ou non le fichier PHP si <entry><emphasis>true</emphasis></entry>
plusieurs demandes d'inclusions sont faites.</entry> <entry>Inclure plusieurs fois ou non le fichier PHP si
</row> plusieurs demandes d'inclusions sont faites.</entry>
<row> </row>
<entry>assign</entry> <row>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>assign</entry>
<entry>Non</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Non</entry>
<entry>le nom de la variable PHP dans laquelle la sortie <entry><emphasis>n/a</emphasis></entry>
sera assign<67>e plut<75>t que directement affich<63>e.</entry> <entry>le nom de la variable PHP dans laquelle la sortie
</row> sera assign<67>e plut<75>t que directement affich<63>e.</entry>
</tbody> </row>
</tgroup> </tbody>
</informaltable> </tgroup>
<para> </informaltable>
les balises include_php sont utilis<69>es pour inclure directement <para>
un script PHP dans vos templates. Si "security" est activ<69>, alors le script les balises include_php sont utilis<69>es pour inclure directement
<20> ex<65>cuter doit <20>tre plac<61> dans le chemin $trusted_dir. La balise un script PHP dans vos templates. Si "security" est activ<69>, alors le script
include_php attends l'attribut "file", qui contient le chemin du <EFBFBD> ex<65>cuter doit <20>tre plac<61> dans le chemin $trusted_dir. La balise
fichier PHP <20> inclure, relatif <20> $trusted_dir, ou absolu. include_php attends l'attribut "file", qui contient le chemin du
</para> fichier PHP <20> inclure, relatif <20> $trusted_dir, ou absolu.
<para> </para>
include_php est un moyen agr<67>able pour g<>rer des "composants templates", <para>
tout en conservant le code PHP en dehors du template lui m<>me. include_php est un moyen agr<67>able pour g<>rer des "composants templates",
Supposons que vous ayez un template reprenant la navigation de votre tout en conservant le code PHP en dehors du template lui m<>me.
site, elle m<>me r<>cup<75>r<EFBFBD>e depuis une base de donn<6E>es. Vous pouvez Supposons que vous ayez un template reprenant la navigation de votre
conserver la logique du code PHP r<>cup<75>rant le contenu de la base dans site, elle m<>me r<>cup<75>r<EFBFBD>e depuis une base de donn<6E>es. Vous pouvez
un emplacement s<>par<61>, et l'inclure depuis votre template. Maintenant, conserver la logique du code PHP r<>cup<75>rant le contenu de la base dans
vous pouvez utiliser ce template n'importe ou, sans vous inqui<75>ter de un emplacement s<>par<61>, et l'inclure depuis votre template. Maintenant,
savoir si les informations n<>cessaires ont bien <20>t<EFBFBD>s assign<67>es vous pouvez utiliser ce template n'importe ou, sans vous inqui<75>ter de
par l'application, avant la demande d'affichage. savoir si les informations n<>cessaires ont bien <20>t<EFBFBD>s assign<67>es
</para> par l'application, avant la demande d'affichage.
<para> </para>
Par d<>faut, les fichiers PHP ne sont inclus qu'une seule fois, m<>me si <para>
la demande d'inclusion survient plusieurs fois dans le template. Par d<>faut, les fichiers PHP ne sont inclus qu'une seule fois, m<>me si
Vous pouvez demander <20> ce que ce fichier soit inclus <20> chaque demande la demande d'inclusion survient plusieurs fois dans le template.
gr<67>ce <20> l'attribut <emphasis>once</emphasis>. Mettre l'attribut once <20> Vous pouvez demander <20> ce que ce fichier soit inclus <20> chaque demande
false aura pour effet d'inclure le script PHP <20> chaque fois que demand<EFBFBD> gr<EFBFBD>ce <20> l'attribut <emphasis>once</emphasis>. Mettre l'attribut once <EFBFBD>
dans le template. false aura pour effet d'inclure le script PHP <20> chaque fois que demand<EFBFBD>
</para> dans le template.
<para> </para>
Vous pouvez donner une valeur <20> l'attribut optionnel <para>
<emphasis>assign</emphasis>, pour demander <20> la fonction Vous pouvez donner une valeur <20> l'attribut optionnel
<emphasis>include_php</emphasis> d'assigner la sortie du script PHP <emphasis>assign</emphasis>, pour demander <20> la fonction
<20> la variable sp<73>cifi<66>e plut<75>t que d'en afficher directement le r<>sultat. <emphasis>include_php</emphasis> d'assigner la sortie du script PHP
</para> <20> la variable sp<73>cifi<66>e plut<75>t que d'en afficher directement le r<>sultat.
<para> </para>
L'objet Smarty est disponible en tant que $this dans le script PHP inclus. <para>
</para> L'objet Smarty est disponible en tant que $this dans le script PHP inclus.
<example> </para>
<title>fonction include_php</title> <example>
<title>fonction include_php</title>
<programlisting> <programlisting>
load_nav.php load_nav.php
------------- -------------
@@ -106,7 +107,7 @@ index.tpl
{foreach item="curr_section" from=$sections} {foreach item="curr_section" from=$sections}
&lt;a href="{$curr_section.url}"&gt;{$curr_section.name}&lt;/a&gt;&lt;br&gt; &lt;a href="{$curr_section.url}"&gt;{$curr_section.name}&lt;/a&gt;&lt;br&gt;
{/foreach}</programlisting> {/foreach}</programlisting>
</example> </example>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
@@ -127,4 +128,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -1,93 +1,94 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="language.function.include"> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<title>include</title> <sect1 id="language.function.include">
<informaltable frame="all"> <title>include</title>
<tgroup cols="5"> <informaltable frame="all">
<colspec colname="param" align="center" /> <tgroup cols="5">
<colspec colname="type" align="center" /> <colspec colname="param" align="center" />
<colspec colname="required" align="center" /> <colspec colname="type" align="center" />
<colspec colname="default" align="center" /> <colspec colname="required" align="center" />
<colspec colname="desc" /> <colspec colname="default" align="center" />
<thead> <colspec colname="desc" />
<row> <thead>
<entry>Nom attribut</entry> <row>
<entry>Type</entry> <entry>Nom attribut</entry>
<entry>Requis</entry> <entry>Type</entry>
<entry>Defaut</entry> <entry>Requis</entry>
<entry>Description</entry> <entry>Defaut</entry>
</row> <entry>Description</entry>
</thead> </row>
<tbody> </thead>
<row> <tbody>
<entry>file</entry> <row>
<entry>cha<EFBFBD>ne de caract<63>res</entry> <entry>file</entry>
<entry>Oui</entry> <entry>cha<EFBFBD>ne de caract<63>res</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Oui</entry>
<entry>Le nom du template <20> inclure</entry> <entry><emphasis>n/a</emphasis></entry>
</row> <entry>Le nom du template <20> inclure</entry>
<row> </row>
<entry>assign</entry> <row>
<entry>cha<EFBFBD>ne de caract<63>res</entry> <entry>assign</entry>
<entry>Non</entry> <entry>cha<EFBFBD>ne de caract<63>res</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Non</entry>
<entry>Le nom de la variable dans laquelle sera assign<67>e <entry><emphasis>n/a</emphasis></entry>
la sortie de include</entry> <entry>Le nom de la variable dans laquelle sera assign<67>e
</row> la sortie de include</entry>
<row> </row>
<entry>[var ...]</entry> <row>
<entry>[type de variable]</entry> <entry>[var ...]</entry>
<entry>Non</entry> <entry>[type de variable]</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Non</entry>
<entry>Variables <20> passer au template</entry> <entry><emphasis>n/a</emphasis></entry>
</row> <entry>Variables <20> passer au template</entry>
</tbody> </row>
</tgroup> </tbody>
</informaltable> </tgroup>
<para> </informaltable>
Les balises "include" sont utilis<69>es pour inclure des templates <20> <para>
l'int<6E>rieur d'autres templates. Toutes les variables disponibles Les balises "include" sont utilis<69>es pour inclure des templates <20>
dans le template r<>alisant l'inclusion sont disponibles dans le l'int<6E>rieur d'autres templates. Toutes les variables disponibles
template inclus. La balise include doit disposer de l'attribut dans le template r<EFBFBD>alisant l'inclusion sont disponibles dans le
"file", qui contient le chemin de la ressource template. template inclus. La balise include doit disposer de l'attribut
</para> "file", qui contient le chemin de la ressource template.
<para> </para>
Vous pouvez sp<73>cifier un attribut optionnel <emphasis>assign</emphasis> <para>
qui d<>finit une variable de template dans laquelle la sortie de Vous pouvez sp<73>cifier un attribut optionnel <emphasis>assign</emphasis>
<emphasis>include</emphasis> sera stock<63>e plut<75>t qu'affich<63>e. qui d<>finit une variable de template dans laquelle la sortie de
</para> <emphasis>include</emphasis> sera stock<63>e plut<75>t qu'affich<63>e.
<example> </para>
<title>fonction include</title> <example>
<title>fonction include</title>
<programlisting> <programlisting>
{include file="header.tpl"} {include file="header.tpl"}
{* Le corp du template va ici *} {* Le corp du template va ici *}
{include file="footer.tpl"}</programlisting> {include file="footer.tpl"}</programlisting>
</example> </example>
<para> <para>
Vous pouvez <20>galement passer des variables au template inclus Vous pouvez <20>galement passer des variables au template inclus
sous forme d'attributs. Les variables pass<73>es au template par ce moyen sous forme d'attributs. Les variables pass<73>es au template par ce moyen
ne sont accessibles que dans la port<72>e de ce dernier. Les variables ne sont accessibles que dans la port<72>e de ce dernier. Les variables
pass<73>es en tant qu'attribut remplacent les variables d<>j<EFBFBD> d<>finies, pass<73>es en tant qu'attribut remplacent les variables d<>j<EFBFBD> d<>finies,
qui auraient le m<>me nom. qui auraient le m<>me nom.
</para> </para>
<example> <example>
<title>fonction include, passage de variables</title> <title>fonction include, passage de variables</title>
<programlisting> <programlisting>
{include file="header.tpl" title="Menu principal" table_bgcolor="#c0c0c0"} {include file="header.tpl" title="Menu principal" table_bgcolor="#c0c0c0"}
{* Le corps du template vient ici *} {* Le corps du template vient ici *}
{include file="footer.tpl" logo="http://mon.domaine.com/logo.gif"}</programlisting> {include file="footer.tpl" logo="http://mon.domaine.com/logo.gif"}</programlisting>
</example> </example>
<para> <para>
Utilisez la syntaxe <link Utilisez la syntaxe <link
linkend="template.resources">ressource template</link> pour inclure linkend="template.resources">ressource template</link> pour inclure
des fichiers situ<74>s en dehors du r<>pertoire $template_dir. des fichiers situ<74>s en dehors du r<>pertoire $template_dir.
</para> </para>
<example> <example>
<title>fonction include, exemple de ressource template</title> <title>fonction include, exemple de ressource template</title>
<programlisting> <programlisting>
{* chemin absolu *} {* chemin absolu *}
{include file="/usr/local/include/templates/header.tpl"} {include file="/usr/local/include/templates/header.tpl"}
@@ -100,7 +101,7 @@
{* inclusion d'une ressource template "db" *} {* inclusion d'une ressource template "db" *}
{include file="db:header.tpl"}</programlisting> {include file="db:header.tpl"}</programlisting>
</example> </example>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
@@ -121,4 +122,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -1,143 +1,154 @@
Warning: Unknown modifier 'l' in /home/user/didou/cvs/smarty/docs/fr/designers/language-builtin-functions/clean.php on line 56
Warning: Unknown modifier 'l' in /home/user/didou/cvs/smarty/docs/fr/designers/language-builtin-functions/clean.php on line 56
Warning: Unknown modifier 'l' in /home/user/didou/cvs/smarty/docs/fr/designers/language-builtin-functions/clean.php on line 56
Warning: Unknown modifier 'l' in /home/user/didou/cvs/smarty/docs/fr/designers/language-builtin-functions/clean.php on line 56
Warning: Unknown modifier 'l' in /home/user/didou/cvs/smarty/docs/fr/designers/language-builtin-functions/clean.php on line 56
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="language.function.insert"> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<title>insert</title> <sect1 id="language.function.insert">
<informaltable frame="all"> <title>insert</title>
<tgroup cols="5"> <informaltable frame="all">
<colspec colname="param" align="center" /> <tgroup cols="5">
<colspec colname="type" align="center" /> <colspec colname="param" align="center" />
<colspec colname="required" align="center" /> <colspec colname="type" align="center" />
<colspec colname="default" align="center" /> <colspec colname="required" align="center" />
<colspec colname="desc" /> <colspec colname="default" align="center" />
<thead> <colspec colname="desc" />
<row> <thead>
<entry>Nom attribut</entry> <row>
<entry>Type</entry> <entry>Nom attribut</entry>
<entry>Requis</entry> <entry>Type</entry>
<entry>Defaut</entry> <entry>Requis</entry>
<entry>Description</entry> <entry>Defaut</entry>
</row> <entry>Description</entry>
</thead> </row>
<tbody> </thead>
<row> <tbody>
<entry>name</entry> <row>
<entry>cha<EFBFBD>ne de caract<63>res</entry> <entry>name</entry>
<entry>Oui</entry> <entry>cha<EFBFBD>ne de caract<63>res</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Oui</entry>
<entry>le nom de la fonction insert (insert_name)</entry> <entry><emphasis>n/a</emphasis></entry>
</row> <entry>le nom de la fonction insert (insert_name)</entry>
<row> </row>
<entry>assign</entry> <row>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>assign</entry>
<entry>Non</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Non</entry>
<entry>Le nom de la variable qui recevra la sortie</entry> <entry><emphasis>n/a</emphasis></entry>
</row> <entry>Le nom de la variable qui recevra la sortie</entry>
<row> </row>
<entry>script</entry> <row>
<entry>cha<EFBFBD>ne de caract<63>res</entry> <entry>script</entry>
<entry>Non</entry> <entry>cha<EFBFBD>ne de caract<63>res</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Non</entry>
<entry>Le nom du script PHP inclus avant que la fonction <entry><emphasis>n/a</emphasis></entry>
insert ne soit appel<65>e.</entry> <entry>Le nom du script PHP inclus avant que la fonction
</row> insert ne soit appel<65>e.</entry>
<row> </row>
<entry>[var ...]</entry> <row>
<entry>[var type]</entry> <entry>[var ...]</entry>
<entry>Non</entry> <entry>[var type]</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Non</entry>
<entry>Variable <20> passer <20> la fonction insert</entry> <entry><emphasis>n/a</emphasis></entry>
</row> <entry>Variable <20> passer <20> la fonction insert</entry>
</tbody> </row>
</tgroup> </tbody>
</informaltable> </tgroup>
<para> </informaltable>
Les balises insert fonctionnent <20> peu pr<70>s comme les balises include, <para>
<20> l'exception que leur sortie n'est pas plac<61>e en cache lorsque Les balises insert fonctionnent <20> peu pr<70>s comme les balises include,
<link linkend="caching">le cache [caching]</link> est activ<69>. <EFBFBD> l'exception que leur sortie n'est pas plac<EFBFBD>e en cache lorsque
Les balises insert seront ex<65>cut<75>es <20> chaque appel du template. <link linkend="caching">le cache [caching]</link> est activ<69>.
</para> Les balises insert seront ex<65>cut<75>es <20> chaque appel du template.
<para> </para>
Supposons que vous avez un template avec un emplacement <para>
pour un bandeau publicitaire en haut de page. Supposons que vous avez un template avec un emplacement
Ce bandeau publicitaire peut contenir toutes sortes de contenus pour un bandeau publicitaire en haut de page.
HTML, images, flash, etc. Nous ne pouvons pas placer du contenu Ce bandeau publicitaire peut contenir toutes sortes de contenus
statique <20> cet endroit. Nous ne voulons pas non plus que ce HTML, images, flash, etc. Nous ne pouvons pas placer du contenu
contenu fasse partie du cache. Arrive alors la balise insert. statique <20> cet endroit. Nous ne voulons pas non plus que ce
Le template connais #emplacement_bandeau# et #id_site# (r<>cup<75>r<EFBFBD>s contenu fasse partie du cache. Arrive alors la balise insert.
depuis un fichier de configuration), et <20> besoin d'un appel de Le template connais #emplacement_bandeau# et #id_site# (r<>cup<75>r<EFBFBD>s
fonction pour r<>cup<75>rer le contenu du bandeau. depuis un fichier de configuration), et <20> besoin d'un appel de
</para> fonction pour r<>cup<75>rer le contenu du bandeau.
<example> </para>
<title>function insert</title> <example>
<title>function insert</title>
<programlisting> <programlisting>
{* exemple de r<>cup<75>ration d'un bandeau publicitaire *} {* exemple de r<>cup<75>ration d'un bandeau publicitaire *}
{insert name="getBanner" lid=#emplacement_bandeau# sid=#id_site#}</programlisting> {insert name="getBanner" lid=#emplacement_bandeau# sid=#id_site#}</programlisting>
</example> </example>
<para> <para>
Dans cet exemple, nous utilisons le nom getBanner et lui passons les Dans cet exemple, nous utilisons le nom getBanner et lui passons les
param<61>tres #emplacement_bandeau# et #id_site#. Smarty va rechercher une param<61>tres #emplacement_bandeau# et #id_site#. Smarty va rechercher une
fonction appel<65>e insert_getBanner () dans votre application PHP, et lui fonction appel<65>e insert_getBanner () dans votre application PHP, et lui
passer les valeurs #banner_location_id# et #site_id# comme premier passer les valeurs #banner_location_id# et #site_id# comme premier
param<61>tre, dans un tableau associatif. Tous les noms des fonctions insert param<61>tre, dans un tableau associatif. Tous les noms des fonctions insert
de votre application doivent <20>tre prefix<69>es de "insert_" pour rem<65>dier de votre application doivent <20>tre prefix<69>es de "insert_" pour rem<65>dier
<20> d'<27>ventuels conflits de nommage. Votre fonction insert_getBanner () <20> d'<27>ventuels conflits de nommage. Votre fonction insert_getBanner ()
est suppos<6F>e traiter les valeurs pass<73>es et retourner est suppos<6F>e traiter les valeurs pass<73>es et retourner
un r<>sultat. Ces r<>sultats sont affich<63>s dans le template en lieu et un r<>sultat. Ces r<>sultats sont affich<63>s dans le template en lieu et
place de la balise. Dans cet exemple, Smarty appellera cette fonction place de la balise. Dans cet exemple, Smarty appellera cette fonction
insert_getBanner(array("lid" => "12345","sid" => "67890")); et affichera insert_getBanner(array("lid" => "12345","sid" => "67890")); et affichera
le r<>sultat retourn<72> <20> la place de la balise insert. le r<>sultat retourn<72> <20> la place de la balise insert.
</para> </para>
<para> <para>
Si vous donnez une valeur <20> l'attribut "assign", la sortie de la balise Si vous donnez une valeur <20> l'attribut "assign", la sortie de la balise
insert sera assign<67> <20> une variable de template de ce nom au lieu d'<27>tre insert sera assign<67> <20> une variable de template de ce nom au lieu d'<27>tre
affich<63>e directement. NOTE: assigner la sortie <20> une variable n'est pas affich<63>e directement. NOTE: assigner la sortie <20> une variable n'est pas
tr<74>s utile lorsque le cache est activ<69>. tr<74>s utile lorsque le cache est activ<69>.
</para> </para>
<para> <para>
Si vous donnez une valeur <20> l'attribut "script", ce script PHP sera Si vous donnez une valeur <20> l'attribut "script", ce script PHP sera
inclus (une seule fois) avant l'ex<65>cution de la fonction insert. inclus (une seule fois) avant l'ex<65>cution de la fonction insert.
Le cas peut survenir lorsque la fonction insert n'existe pas encore, Le cas peut survenir lorsque la fonction insert n'existe pas encore,
et que le script PHP charg<72> de sa d<>finission doit <20>tre inclus. Le et que le script PHP charg<72> de sa d<>finission doit <20>tre inclus. Le
chemin doit <20>tre absolu ou relatif <20> $trusted_dir. chemin doit <20>tre absolu ou relatif <20> $trusted_dir.
Lorsque "security" est actif, le script doit <20>tre situ<74> Lorsque "security" est actif, le script doit <20>tre situ<74>
dans $trusted_dir. dans $trusted_dir.
</para> </para>
<para> <para>
L'objet Smarty est pass<73> comme second argument. De cette fa<66>on, vous L'objet Smarty est pass<73> comme second argument. De cette fa<66>on, vous
pouvez utiliser ou modifier des informations sur l'objet Smarty, pouvez utiliser ou modifier des informations sur l'objet Smarty,
directement depuis votre fonction d'insertion. directement depuis votre fonction d'insertion.
</para> </para>
<note> <note>
<title>Note technique</title> <title>Note technique</title>
<para> <para>
Il est possible d'avoir des portions de template qui ne soient pas Il est possible d'avoir des portions de template qui ne soient pas
g<>rables par le cache. M<>me si vous avez activ<69> l'option g<>rables par le cache. M<>me si vous avez activ<69> l'option
<link linkend="caching">caching</link>, les balises insert <link linkend="caching">caching</link>, les balises insert
ne feront pas partie du cache. Elles retourneront un contenu dynamique ne feront pas partie du cache. Elles retourneront un contenu dynamique
<20> chaque invocation de la page. Cette m<>thode est tr<74>s pratique pour <20> chaque invocation de la page. Cette m<>thode est tr<74>s pratique pour
des <20>l<EFBFBD>ments tels que les bandeaux publicitaires, les enqu<71>tes, des <20>l<EFBFBD>ments tels que les bandeaux publicitaires, les enqu<71>tes,
la m<>t<EFBFBD>o, les r<>sultats de recherche, retours utilisateurs, etc. la m<>t<EFBFBD>o, les r<>sultats de recherche, retours utilisateurs, etc.
</para> </para>
</note> </note>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
mode: sgml mode: sgml
sgml-omittag:t sgml-omittag:t
sgml-shorttag:t sgml-shorttag:t
sgml-minimize-attributes:nil sgml-minimize-attributes:nil
sgml-always-quote-attributes:t sgml-always-quote-attributes:t
sgml-indent-step:1 sgml-indent-step:1
sgml-indent-data:t sgml-indent-data:t
indent-tabs-mode:nil indent-tabs-mode:nil
sgml-parent-document:nil sgml-parent-document:nil
sgml-default-dtd-file:"../../../../manual.ced" sgml-default-dtd-file:"../../../../manual.ced"
sgml-exposed-tags:nil sgml-exposed-tags:nil
sgml-local-catalogs:nil sgml-local-catalogs:nil
sgml-local-ecat-files:nil sgml-local-ecat-files:nil
End: End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -1,15 +1,16 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="language.function.ldelim"> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<title>ldelim,rdelim</title> <sect1 id="language.function.ldelim">
<para> <title>ldelim,rdelim</title>
ldelim et rdelim sont utilis<69>s pour afficher les d<>limiteurs en tant <para>
que tels, dans notre cas "{" ou "}". Le moteur de template tentera ldelim et rdelim sont utilis<69>s pour afficher les d<>limiteurs en tant
toujours d'interpr<70>ter le contenu entre les d<>limiteurs, c'est donc que tels, dans notre cas "{" ou "}". Le moteur de template tentera
une fa<66>on d'afficher ces derniers sans interf<72>rer avec Smarty. toujours d'interpr<70>ter le contenu entre les d<>limiteurs, c'est donc
</para> une fa<66>on d'afficher ces derniers sans interf<72>rer avec Smarty.
<example> </para>
<title>ldelim, rdelim</title> <example>
<title>ldelim, rdelim</title>
<programlisting> <programlisting>
{* Affiche les d<>limiteurs de template *} {* Affiche les d<>limiteurs de template *}
@@ -19,7 +20,7 @@
SORTIE: SORTIE:
{nomFonction} est la fa<66>on dont sont appel<65>es les fonctions dans Smarty !</programlisting> {nomFonction} est la fa<66>on dont sont appel<65>es les fonctions dans Smarty !</programlisting>
</example> </example>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
@@ -40,4 +41,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -1,17 +1,18 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="language.function.literal"> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<title>literal</title> <sect1 id="language.function.literal">
<para> <title>literal</title>
Les balises "literal" permettent <20> un bloc de donn<6E>es d'<27>tre pris tel <para>
quel, sans qu'il ne soit interpr<70>t<EFBFBD> par Smarty. Tr<54>s pratique lors Les balises "literal" permettent <20> un bloc de donn<6E>es d'<27>tre pris tel
de l'emplois d'<27>l<EFBFBD>ments tels que javascript, acolades et autres quel, sans qu'il ne soit interpr<70>t<EFBFBD> par Smarty. Tr<54>s pratique lors
qui peuvent confondre le moteur de template. Tout le contenu situ<74> de l'emplois d'<27>l<EFBFBD>ments tels que javascript, acolades et autres
entre les balises {literal}{/literal} ne sera pas interpr<70>t<EFBFBD>, et qui peuvent confondre le moteur de template. Tout le contenu situ<74>
affich<63> comme du contenu statique. entre les balises {literal}{/literal} ne sera pas interpr<70>t<EFBFBD>, et
</para> affich<63> comme du contenu statique.
<example> </para>
<title>balises literal</title> <example>
<title>balises literal</title>
<programlisting> <programlisting>
{literal} {literal}
&lt;script language=javascript&gt; &lt;script language=javascript&gt;
@@ -30,7 +31,7 @@
&lt;/script&gt; &lt;/script&gt;
{/literal}</programlisting> {/literal}</programlisting>
</example> </example>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
@@ -51,4 +52,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -1,23 +1,24 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="language.function.php"> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<title>php</title> <sect1 id="language.function.php">
<para> <title>php</title>
Les balises PHP permettent de rajouter du code PHP directement dans le <para>
template. Ils ne seront pas ignor<6F>s, quelle que soit la valeur de <link Les balises PHP permettent de rajouter du code PHP directement dans le
linkend="variable.php.handling">$php_handling</link>. Pour les template. Ils ne seront pas ignor<6F>s, quelle que soit la valeur de <link
utilisateurs avanc<6E>s seulement, son utilisation n'est normalement pas linkend="variable.php.handling">$php_handling</link>. Pour les
n<>cessaire. utilisateurs avanc<6E>s seulement, son utilisation n'est normalement pas
</para> n<>cessaire.
<example> </para>
<title>balises php</title> <example>
<title>balises php</title>
<programlisting> <programlisting>
{php} {php}
// inclusion directe d'un script PHP // inclusion directe d'un script PHP
// depuis le template. // depuis le template.
include("/path/to/display_weather.php"); include("/path/to/display_weather.php");
{/php}</programlisting> {/php}</programlisting>
</example> </example>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
@@ -38,4 +39,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -1,100 +1,101 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="language.function.section"> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<title>section,sectionelse</title> <sect1 id="language.function.section">
<informaltable frame="all"> <title>section,sectionelse</title>
<tgroup cols="5"> <informaltable frame="all">
<colspec colname="param" align="center" /> <tgroup cols="5">
<colspec colname="type" align="center" /> <colspec colname="param" align="center" />
<colspec colname="required" align="center" /> <colspec colname="type" align="center" />
<colspec colname="default" align="center" /> <colspec colname="required" align="center" />
<colspec colname="desc" /> <colspec colname="default" align="center" />
<thead> <colspec colname="desc" />
<row> <thead>
<entry>Nom attribut</entry> <row>
<entry>Type</entry> <entry>Nom attribut</entry>
<entry>Requis</entry> <entry>Type</entry>
<entry>Defaut</entry> <entry>Requis</entry>
<entry>Description</entry> <entry>Defaut</entry>
</row> <entry>Description</entry>
</thead> </row>
<tbody> </thead>
<row> <tbody>
<entry>name</entry> <row>
<entry>cha<EFBFBD>ne de caract<63>re</entry> <entry>name</entry>
<entry>Oui</entry> <entry>cha<EFBFBD>ne de caract<63>re</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Oui</entry>
<entry>Le nom de la section</entry> <entry><emphasis>n/a</emphasis></entry>
</row> <entry>Le nom de la section</entry>
<row> </row>
<entry>loop</entry> <row>
<entry>[$nom_variable]</entry> <entry>loop</entry>
<entry>Oui</entry> <entry>[$nom_variable]</entry>
<entry><emphasis>n/a</emphasis></entry> <entry>Oui</entry>
<entry>le nom de la variable qui d<>termine le nombre de <entry><emphasis>n/a</emphasis></entry>
fois que la boucle sera ex<65>cut<75>e. <entry>le nom de la variable qui d<>termine le nombre de
</entry> fois que la boucle sera ex<65>cut<75>e.
</row> </entry>
<row> </row>
<entry>start</entry> <row>
<entry>entier</entry> <entry>start</entry>
<entry>Non</entry> <entry>entier</entry>
<entry><emphasis>0</emphasis></entry> <entry>Non</entry>
<entry>La position de l'index ou la section commencera son <entry><emphasis>0</emphasis></entry>
parcours. Si la valeur donn<6E>e est n<>gative, la position de <entry>La position de l'index ou la section commencera son
d<>part est calcul<75>e depuis la fin du tableau. Par exemple, parcours. Si la valeur donn<6E>e est n<>gative, la position de
s'il existe 7 valeurs dans le tableau <20> parcourir et que start d<EFBFBD>part est calcul<75>e depuis la fin du tableau. Par exemple,
est <20> -2, l'index de d<>part sera 5. Les valeurs incorrectes s'il existe 7 valeurs dans le tableau <20> parcourir et que start
(en dehors de la port<72>e du tableau) sont automatiquements est <20> -2, l'index de d<>part sera 5. Les valeurs incorrectes
tronqu<71>es <20> la valeur correcte la plus proche.</entry> (en dehors de la port<72>e du tableau) sont automatiquements
</row> tronqu<EFBFBD>es <20> la valeur correcte la plus proche.</entry>
<row> </row>
<entry>step</entry> <row>
<entry>entier</entry> <entry>step</entry>
<entry>Non</entry> <entry>entier</entry>
<entry><emphasis>1</emphasis></entry> <entry>Non</entry>
<entry>La valeur du pas qui sera utilis<69> pour parcourir le <entry><emphasis>1</emphasis></entry>
tableau.Par exemple, step=2 parcourera les indices <entry>La valeur du pas qui sera utilis<69> pour parcourir le
0,2,4, etc. Si step est n<>gatif, le tableau sera parcouru en sens tableau.Par exemple, step=2 parcourera les indices
inverse.</entry> 0,2,4, etc. Si step est n<>gatif, le tableau sera parcouru en sens
</row> inverse.</entry>
<row> </row>
<entry>max</entry> <row>
<entry>entier</entry> <entry>max</entry>
<entry>Non</entry> <entry>entier</entry>
<entry><emphasis>1</emphasis></entry> <entry>Non</entry>
<entry>D<EFBFBD>finit le nombre maximum de fois que le tableau sera <entry><emphasis>1</emphasis></entry>
parcouru.</entry> <entry>D<EFBFBD>finit le nombre maximum de fois que le tableau sera
</row> parcouru.</entry>
<row> </row>
<entry>show</entry> <row>
<entry>bool<EFBFBD>en</entry> <entry>show</entry>
<entry>Non</entry> <entry>bool<EFBFBD>en</entry>
<entry><emphasis>true</emphasis></entry> <entry>Non</entry>
<entry>D<EFBFBD>termine s'il est n<>cessaire d'afficher la <entry><emphasis>true</emphasis></entry>
section ou non.</entry> <entry>D<EFBFBD>termine s'il est n<>cessaire d'afficher la
</row> section ou non.</entry>
</tbody> </row>
</tgroup> </tbody>
</informaltable> </tgroup>
<para> </informaltable>
Les balises <emphasis>section</emphasis> sont utilis<69>es pour <para>
parcourir un tableau de donn<6E>es. Toutes les balises Les balises <emphasis>section</emphasis> sont utilis<EFBFBD>es pour
<emphasis>section</emphasis> doivent <20>tre utilis<69>es de paire avec parcourir un tableau de donn<6E>es. Toutes les balises
les balises <emphasis>/section</emphasis>. Les param<61>tres requis <emphasis>section</emphasis> doivent <20>tre utilis<69>es de paire avec
sont <emphasis>name</emphasis> et <emphasis>loop</emphasis>. les balises <emphasis>/section</emphasis>. Les param<61>tres requis
Le nom de la section est, selon votre choix, compos<6F> de lettres, sont <emphasis>name</emphasis> et <emphasis>loop</emphasis>.
chiffres et underscores. Les sections peuvent <20>tre imbriqu<71>es, Le nom de la section est, selon votre choix, compos<6F> de lettres,
mais leurs noms doivent <20>tre uniques. La variable de parcours chiffres et underscores. Les sections peuvent <20>tre imbriqu<71>es,
(g<>n<EFBFBD>ralement un tableau de donn<6E>es) d<>termine le nombre de fois mais leurs noms doivent <20>tre uniques. La variable de parcours
que la section sera parcourue. Lorsque l'on affiche une variable (g<>n<EFBFBD>ralement un tableau de donn<6E>es) d<>termine le nombre de fois
dans une section, le nom de la section doit pr<70>c<EFBFBD>der que la section sera parcourue. Lorsque l'on affiche une variable
la variable entre crochets. <emphasis>sectionelse</emphasis> dans une section, le nom de la section doit pr<70>c<EFBFBD>der
est ex<65>cut<75> lorsqu'aucune valeur n'est trouv<75>e dans la variable <20> la variable entre crochets. <emphasis>sectionelse</emphasis>
parcourir. est ex<65>cut<75> lorsqu'aucune valeur n'est trouv<75>e dans la variable <20>
</para> parcourir.
<example> </para>
<title>section</title> <example>
<title>section</title>
<programlisting> <programlisting>
{* Cet exemple va afficher toutes les valeurs du tableau $custid *} {* Cet exemple va afficher toutes les valeurs du tableau $custid *}
@@ -107,10 +108,10 @@ SORTIE:
id: 1000&lt;br&gt; id: 1000&lt;br&gt;
id: 1001&lt;br&gt; id: 1001&lt;br&gt;
id: 1002&lt;br&gt;</programlisting> id: 1002&lt;br&gt;</programlisting>
</example> </example>
<example> <example>
<title>section, variable de parcours</title> <title>section, variable de parcours</title>
<programlisting> <programlisting>
{* La variable de parcours d<>termine uniquement le nombre de fois que nous allons {* La variable de parcours d<>termine uniquement le nombre de fois que nous allons
rentrer dans la boucle. Vous pouvez acc<63>der <20> toutes les variables du template rentrer dans la boucle. Vous pouvez acc<63>der <20> toutes les variables du template
@@ -139,10 +140,10 @@ id: 1002&lt;br&gt;
nom: Jane Munson&lt;br&gt; nom: Jane Munson&lt;br&gt;
addresse: 5605 apple st&lt;br&gt; addresse: 5605 apple st&lt;br&gt;
&lt;p&gt;</programlisting> &lt;p&gt;</programlisting>
</example> </example>
<example> <example>
<title>nom de section</title> <title>nom de section</title>
<programlisting> <programlisting>
{* Le nom de la section peut <20>tre ce que vous voulez, {* Le nom de la section peut <20>tre ce que vous voulez,
et est utilis<69> pour r<>f<EFBFBD>rencer les donn<6E>es depuis la section. *} et est utilis<69> pour r<>f<EFBFBD>rencer les donn<6E>es depuis la section. *}
@@ -152,10 +153,10 @@ addresse: 5605 apple st&lt;br&gt;
address: {$addresses[monTableau]}&lt;br&gt; address: {$addresses[monTableau]}&lt;br&gt;
&lt;p&gt; &lt;p&gt;
{/section}</programlisting> {/section}</programlisting>
</example> </example>
<example> <example>
<title>sections imbriqu<71>es</title> <title>sections imbriqu<71>es</title>
<programlisting> <programlisting>
{* Les sections peuvent <20>tre imbriqu<71>es <20> un nombre de niveaux illimit<69>. {* Les sections peuvent <20>tre imbriqu<71>es <20> un nombre de niveaux illimit<69>.
Gr<47>ce aux sections imbriqu<71>es, vous pouvez acc<63>der <20> des structures de donn<6E>es Gr<47>ce aux sections imbriqu<71>es, vous pouvez acc<63>der <20> des structures de donn<6E>es
@@ -196,10 +197,10 @@ telephone: 555-555-5555&lt;br&gt;
telephone portable: 555-555-5555&lt;br&gt; telephone portable: 555-555-5555&lt;br&gt;
e-mail: jane@mydomain.com&lt;br&gt; e-mail: jane@mydomain.com&lt;br&gt;
&lt;p&gt;</programlisting> &lt;p&gt;</programlisting>
</example> </example>
<example> <example>
<title>Sections et tableaux associatifs</title> <title>Sections et tableaux associatifs</title>
<programlisting> <programlisting>
{* Exemple d'affichage d'un tableau associatif dans une section *} {* Exemple d'affichage d'un tableau associatif dans une section *}
{section name=client loop=$contacts} {section name=client loop=$contacts}
@@ -224,12 +225,12 @@ nom: Jane Munson&lt;br&gt;
telephone: 555-555-5555&lt;br&gt; telephone: 555-555-5555&lt;br&gt;
portable: 555-555-5555&lt;br&gt; portable: 555-555-5555&lt;br&gt;
e-mail: jane@mydomain.com&lt;p&gt;</programlisting> e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
</example> </example>
<example> <example>
<title>sectionelse</title> <title>sectionelse</title>
<programlisting> <programlisting>
{* sectionelse est ex<65>cut<75> s'il n'existe aucune valeur dans idClient *} {* sectionelse est ex<65>cut<75> s'il n'existe aucune valeur dans idClient *}
{section name=client loop=$idClient} {section name=client loop=$idClient}
@@ -237,36 +238,36 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
{sectionelse} {sectionelse}
Aucune valeur dans $idClient. Aucune valeur dans $idClient.
{/section}</programlisting> {/section}</programlisting>
</example> </example>
<para> <para>
Les sections ont leur propre variable de gestion des propri<72>t<EFBFBD>s. Les sections ont leur propre variable de gestion des propri<72>t<EFBFBD>s.
Elles sont de la forme: {$smarty.section.nomSection.nomVariable} Elles sont de la forme: {$smarty.section.nomSection.nomVariable}
</para> </para>
<para> <para>
NOTE: Depuis Smarty 1.5.0, la syntaxe pour les propi<70>t<EFBFBD>s des sections NOTE: Depuis Smarty 1.5.0, la syntaxe pour les propi<70>t<EFBFBD>s des sections
a <20>t<EFBFBD> chang<6E>e de {%sectionname.varname%} <20> a <20>t<EFBFBD> chang<6E>e de {%sectionname.varname%} <20>
{$smarty.section.nomSection.nomVariable}. L'ancienne syntaxe est toujours {$smarty.section.nomSection.nomVariable}. L'ancienne syntaxe est toujours
support<72>e, mais vous ne verrez que des exemples avec la nouvelle syntaxe support<72>e, mais vous ne verrez que des exemples avec la nouvelle syntaxe
dans le manuel. dans le manuel.
</para> </para>
<sect2 id="section.property.index"> <sect2 id="section.property.index">
<title>index</title> <title>index</title>
<para> <para>
Index est utilis<69> pour afficher l'index de parcours courant, commence par Index est utilis<69> pour afficher l'index de parcours courant, commence par
0 (ou l'attribut start), et s'incr<63>mente de 1 (ou de la valeur 0 (ou l'attribut start), et s'incr<63>mente de 1 (ou de la valeur
de l'attribut step). de l'attribut step).
</para> </para>
<note> <note>
<title>Note technique</title> <title>Note technique</title>
<para> <para>
Si les attributs step et start ne sont pas modifi<66>s, alors index Si les attributs step et start ne sont pas modifi<66>s, alors index
fonctionne de la m<>me fa<66>on que iteration, <20> l'exception qu'il commence fonctionne de la m<>me fa<66>on que iteration, <20> l'exception qu'il commence
par 0 plut<75>t que par 1. par 0 plut<75>t que par 1.
</para> </para>
</note> </note>
<example> <example>
<title>propri<EFBFBD>t<EFBFBD> de section index</title> <title>propri<EFBFBD>t<EFBFBD> de section index</title>
<programlisting> <programlisting>
{section name=client loop=$idClient} {section name=client loop=$idClient}
{$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt; {$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt;
{/section} {/section}
@@ -278,17 +279,17 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
1 id: 1001&lt;br&gt; 1 id: 1001&lt;br&gt;
2 id: 1002&lt;br&gt; 2 id: 1002&lt;br&gt;
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
<sect2 id="section.property.index.prev"> <sect2 id="section.property.index.prev">
<title>index_prev</title> <title>index_prev</title>
<para> <para>
index_prev est utilis<69> pour afficher l'index de parcours index_prev est utilis<69> pour afficher l'index de parcours
pr<70>c<EFBFBD>dent de la boucle. Au premier passage, il vaut -1. pr<70>c<EFBFBD>dent de la boucle. Au premier passage, il vaut -1.
</para> </para>
<example> <example>
<title>propri<EFBFBD>t<EFBFBD> de section index_prev</title> <title>propri<EFBFBD>t<EFBFBD> de section index_prev</title>
<programlisting> <programlisting>
{section name=client loop=$custid} {section name=client loop=$custid}
{$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt; {$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt;
{* Pour votre information, $idClient[client.index] and $idClient[client] sont identiques *} {* Pour votre information, $idClient[client.index] and $idClient[client] sont identiques *}
@@ -307,18 +308,18 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
2 id: 1002&lt;br&gt; 2 id: 1002&lt;br&gt;
L'id du client <20> <20>t<EFBFBD> modifi<66>&lt;br&gt; L'id du client <20> <20>t<EFBFBD> modifi<66>&lt;br&gt;
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
<sect2 id="section.property.index.next"> <sect2 id="section.property.index.next">
<title>index_next</title> <title>index_next</title>
<para> <para>
index_next est utilis<69> pour afficher la valeur th<74>orique suivante de index_next est utilis<69> pour afficher la valeur th<74>orique suivante de
index. Dans la derni<6E>re boucle, cela reste la valeur incr<63>ment<6E>e, index. Dans la derni<6E>re boucle, cela reste la valeur incr<63>ment<6E>e,
qui respecte l'attribut step si donn<6E>. qui respecte l'attribut step si donn<6E>.
</para> </para>
<example> <example>
<title>propri<EFBFBD>t<EFBFBD> de section index_next</title> <title>propri<EFBFBD>t<EFBFBD> de section index_next</title>
<programlisting> <programlisting>
{section name=client loop=$idClient} {section name=client loop=$idClient}
{$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt; {$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt;
{* Pour votre information, $idClient[client.index] and $idClient[client] sont identiques *} {* Pour votre information, $idClient[client.index] and $idClient[client] sont identiques *}
@@ -337,22 +338,22 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
2 id: 1002&lt;br&gt; 2 id: 1002&lt;br&gt;
L'id du client va changer&lt;br&gt; L'id du client va changer&lt;br&gt;
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
<sect2 id="section.property.iteration"> <sect2 id="section.property.iteration">
<title>iteration</title> <title>iteration</title>
<para> <para>
iteration est utilis<69> pour afficher la valeur courante de l'iteration. iteration est utilis<69> pour afficher la valeur courante de l'iteration.
</para> </para>
<para> <para>
NOTE: Cette valeur n'est pas affect<63>e par les attributs start, step et NOTE: Cette valeur n'est pas affect<63>e par les attributs start, step et
max, <20> l'inverse de la propri<72>t<EFBFBD> index. L'it<69>ration commence par max, <20> l'inverse de la propri<72>t<EFBFBD> index. L'it<69>ration commence par
1 et non par 0 (comme le fait index). rownum est un alias de iteration, 1 et non par 0 (comme le fait index). rownum est un alias de iteration,
ils fonctionnent de la m<>me fa<66>on. ils fonctionnent de la m<>me fa<66>on.
</para> </para>
<example> <example>
<title>propri<EFBFBD>t<EFBFBD> iteration de section</title> <title>propri<EFBFBD>t<EFBFBD> iteration de section</title>
<programlisting> <programlisting>
{section name=client loop=$idClient start=5 step=2} {section name=client loop=$idClient start=5 step=2}
Iteration courante: {$smarty.section.client.iteration}&lt;br&gt; Iteration courante: {$smarty.section.client.iteration}&lt;br&gt;
{$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt; {$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt;
@@ -375,16 +376,16 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
9 id: 1002&lt;br&gt; 9 id: 1002&lt;br&gt;
L'id du client va changer&lt;br&gt; L'id du client va changer&lt;br&gt;
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
<sect2 id="section.property.first"> <sect2 id="section.property.first">
<title>first</title> <title>first</title>
<para> <para>
first est <20> true lorsque la section est parcouru pour la premi<6D>re fois. first est <20> true lorsque la section est parcouru pour la premi<6D>re fois.
</para> </para>
<example> <example>
<title>propri<EFBFBD>t<EFBFBD> first de la section</title> <title>propri<EFBFBD>t<EFBFBD> first de la section</title>
<programlisting> <programlisting>
{section name=client loop=$idClient} {section name=client loop=$idClient}
{if $smarty.section.client.first} {if $smarty.section.client.first}
&lt;table&gt; &lt;table&gt;
@@ -407,16 +408,16 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
&lt;tr&gt;&lt;td&gt;2 id: 1002&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;2 id: 1002&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt; &lt;/table&gt;
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
<sect2 id="section.property.last"> <sect2 id="section.property.last">
<title>last</title> <title>last</title>
<para> <para>
last est <20> true lorsque la section est parcourue pour la derni<6E>re fois. last est <20> true lorsque la section est parcourue pour la derni<6E>re fois.
</para> </para>
<example> <example>
<title>Propri<EFBFBD>t<EFBFBD> last de section</title> <title>Propri<EFBFBD>t<EFBFBD> last de section</title>
<programlisting> <programlisting>
{section name=client loop=$idClient} {section name=client loop=$idClient}
{if $smarty.section.client.first} {if $smarty.section.client.first}
&lt;table&gt; &lt;table&gt;
@@ -439,18 +440,18 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
&lt;tr&gt;&lt;td&gt;2 id: 1002&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt;&lt;td&gt;2 id: 1002&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt; &lt;/table&gt;
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
<sect2 id="section.property.rownum"> <sect2 id="section.property.rownum">
<title>rownum</title> <title>rownum</title>
<para> <para>
rownum, utilis<69> pour afficher la valeur courante de l'it<69>ration, rownum, utilis<69> pour afficher la valeur courante de l'it<69>ration,
commence par 1. C'est un alias de iteration, ils fonctionnent de fa<66>on commence par 1. C'est un alias de iteration, ils fonctionnent de fa<66>on
identique. identique.
</para> </para>
<example> <example>
<title>propri<EFBFBD>t<EFBFBD> rownum de section</title> <title>propri<EFBFBD>t<EFBFBD> rownum de section</title>
<programlisting> <programlisting>
{section name=client loop=$idClient} {section name=client loop=$idClient}
{$smarty.section.client.rownum} id: {$idClient[client]}&lt;br&gt; {$smarty.section.client.rownum} id: {$idClient[client]}&lt;br&gt;
{/section} {/section}
@@ -462,17 +463,17 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
2 id: 1001&lt;br&gt; 2 id: 1001&lt;br&gt;
3 id: 1002&lt;br&gt; 3 id: 1002&lt;br&gt;
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
<sect2 id="section.property.loop"> <sect2 id="section.property.loop">
<title>loop</title> <title>loop</title>
<para> <para>
loop est utilis<69> pour afficher la derni<6E>re valeur de index que cette loop est utilis<69> pour afficher la derni<6E>re valeur de index que cette
section a utilis<69>. Peut <20>tre utilis<69> dans ou en dehors de la section. section a utilis<69>. Peut <20>tre utilis<69> dans ou en dehors de la section.
</para> </para>
<example> <example>
<title>Propri<EFBFBD>t<EFBFBD> de section index</title> <title>Propri<EFBFBD>t<EFBFBD> de section index</title>
<programlisting> <programlisting>
{section name=client loop=$idClient} {section name=client loop=$idClient}
{$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt; {$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt;
{/section} {/section}
@@ -487,19 +488,19 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
il y eu 3 clients d'affich<63>s. il y eu 3 clients d'affich<63>s.
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
<sect2 id="section.property.show"> <sect2 id="section.property.show">
<title>show</title> <title>show</title>
<para> <para>
<emphasis>show</emphasis> est utilis<69> comme param<61>tre de section. <emphasis>show</emphasis> est utilis<69> comme param<61>tre de section.
<emphasis>show</emphasis> est une valeur bool<6F>enne, true ou false. <emphasis>show</emphasis> est une valeur bool<6F>enne, true ou false.
Si show est <20> "false", la section ne sera pas affich<63>e. Si un Si show est <20> "false", la section ne sera pas affich<63>e. Si un
sectionelse est pr<70>sent, elle sera affich<63>. sectionelse est pr<70>sent, elle sera affich<63>.
</para> </para>
<example> <example>
<title>section, attribut show</title> <title>section, attribut show</title>
<programlisting> <programlisting>
{* $show_client_info a pu <20>tre pass<73> par le script PHP, {* $show_client_info a pu <20>tre pass<73> par le script PHP,
pour d<>terminer si oui ou non on souhaite afficher la section *} pour d<>terminer si oui ou non on souhaite afficher la section *}
{section name=client loop=$idClient show=$show_client_info} {section name=client loop=$idClient show=$show_client_info}
@@ -521,17 +522,17 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
la section <20> <20>t<EFBFBD> affich<63>e. la section <20> <20>t<EFBFBD> affich<63>e.
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
<sect2 id="section.property.total"> <sect2 id="section.property.total">
<title>total</title> <title>total</title>
<para> <para>
total est utilis<69> pour afficher le nombre d'it<69>ration que la section total est utilis<69> pour afficher le nombre d'it<69>ration que la section
va ex<65>cuter. Peut <20>tre utilis<69> dans ou en dehors de la section. va ex<65>cuter. Peut <20>tre utilis<69> dans ou en dehors de la section.
</para> </para>
<example> <example>
<title>section, propri<72>t<EFBFBD> total</title> <title>section, propri<72>t<EFBFBD> total</title>
<programlisting> <programlisting>
{section name=client loop=$idClient step=2} {section name=client loop=$idClient step=2}
{$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt; {$smarty.section.client.index} id: {$idClient[client]}&lt;br&gt;
{/section} {/section}
@@ -546,8 +547,8 @@ e-mail: jane@mydomain.com&lt;p&gt;</programlisting>
Il y eu 3 clients affich<63>s. Il y eu 3 clients affich<63>s.
</programlisting> </programlisting>
</example> </example>
</sect2> </sect2>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
@@ -568,4 +569,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->

View File

@@ -1,31 +1,32 @@
<?xml version="1.0" encoding="iso-8859-1"?> <?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ --> <!-- $Revision$ -->
<sect1 id="language.function.strip"> <!-- EN-Revision: 1.1 Maintainer: nobody Status: partial -->
<title>strip</title> <sect1 id="language.function.strip">
<para> <title>strip</title>
Il est fr<66>quent que les designers web rencontrent des probl<62>mes <para>
dus aux espaces et retours chariots, qui affectent le rendu HTML Il est fr<EFBFBD>quent que les designers web rencontrent des probl<62>mes
("fonctionnalit<69>s" des navigateurs), les obligeant <20> coller les dus aux espaces et retours chariots, qui affectent le rendu HTML
balises les unes aux autres. Cette solution rend g<>n<EFBFBD>ralement le ("fonctionnalit<69>s" des navigateurs), les obligeant <20> coller les
code illisible et impossible <20> maintenir. balises les unes aux autres. Cette solution rend g<>n<EFBFBD>ralement le
</para> code illisible et impossible <20> maintenir.
<para> </para>
Tout contenu situ<74> entre les balises {strip}{/strip} se verra <para>
all<6C>g<EFBFBD> des espaces superflus et des retours chariots en d<>but ou en fin Tout contenu situ<74> entre les balises {strip}{/strip} se verra
de ligne, avant qu'il ne soit affich<63>s. De la sorte, vous pouvez all<EFBFBD>g<EFBFBD> des espaces superflus et des retours chariots en d<>but ou en fin
conserver vos templates lisibles, sans vous soucier des effets de ligne, avant qu'il ne soit affich<63>s. De la sorte, vous pouvez
ind<6E>sirables que peuvent apporter les espaces superflus. conserver vos templates lisibles, sans vous soucier des effets
</para> ind<6E>sirables que peuvent apporter les espaces superflus.
<note> </para>
<title>Note technique</title> <note>
<para> <title>Note technique</title>
{strip}{/strip} n'affecte en aucun cas le contenu des variables de <para>
template. Voir le <link linkend="language.modifier.strip">modificateur {strip}{/strip} n'affecte en aucun cas le contenu des variables de
strip</link> pour un rendu identique pour les variables. template. Voir le <link linkend="language.modifier.strip">modificateur
</para> strip</link> pour un rendu identique pour les variables.
</note> </para>
<example> </note>
<title>balises strip</title> <example>
<title>balises strip</title>
<programlisting> <programlisting>
{* la suite sera affich<63>e sur une seule ligne *} {* la suite sera affich<63>e sur une seule ligne *}
{strip} {strip}
@@ -44,14 +45,14 @@
SORTIE: SORTIE:
&lt;table border=0&gt;&lt;tr&gt;&lt;td&gt;&lt;A HREF="http://mon.domaine.com"&gt;&lt;font color="red"&gt;Un test&lt;/font&gt;&lt;/A&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</programlisting> &lt;table border=0&gt;&lt;tr&gt;&lt;td&gt;&lt;A HREF="http://mon.domaine.com"&gt;&lt;font color="red"&gt;Un test&lt;/font&gt;&lt;/A&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</programlisting>
</example> </example>
<para> <para>
Notez que dans l'exemple ci-dessus, toutes les lignes commencent et Notez que dans l'exemple ci-dessus, toutes les lignes commencent et
se terminent par des balises HTML. Sachez que si vous avez du texte se terminent par des balises HTML. Sachez que si vous avez du texte
en d<>but ou en fin de ligne dans des balises strip, ce dernier sera coll<6C> en d<>but ou en fin de ligne dans des balises strip, ce dernier sera coll<6C>
au suivant/pr<70>c<EFBFBD>dent et risque de ne pas <20>tre affich<63> selon au suivant/pr<70>c<EFBFBD>dent et risque de ne pas <20>tre affich<63> selon
l'effet d<>sir<69>. l'effet d<>sir<69>.
</para> </para>
</sect1> </sect1>
<!-- Keep this comment at the end of the file <!-- Keep this comment at the end of the file
Local variables: Local variables:
@@ -72,4 +73,4 @@ End:
vim600: syn=xml fen fdm=syntax fdl=2 si vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml vim: et tw=78 syn=sgml
vi: ts=1 sw=1 vi: ts=1 sw=1
--> -->