Browse Source

DOCUMENTATION French: sync and clean manual

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@15443 44c647ce-9c0f-0410-b52a-842ac1e357ba
mikaelkael 16 years ago
parent
commit
e797594c73

+ 153 - 87
documentation/manual/fr/module_specs/Zend_Form-Decorators.xml

@@ -1,108 +1,146 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 13843 -->
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- EN-Revision: 15207 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.decorators">
     <title>Créer un visuel personnalisé en utilisant Zend_Form_Decorator</title>
 
-    <para>Rendre visuellement un objet de formulaire est complètement optionnel -- il n'est pas obligatoire d'utiliser
-    la méthode <code>render()</code> de <classname>Zend_Form</classname>. Cependant, si vous l'utilisez, alors des décorateurs
-    sont utilisés pour rendre les différents objets du formulaire.</para>
-
-    <para>Un nombre arbitraire de décorateurs peut être attaché à chaque objet du formulaire (élément, groupe
-    d'affichage, sous-formulaires ou encore l'objet formulaire lui-même) ; cependant seul un décorateur par type peut
-    être attaché. Les décorateurs sont appelés dans l'ordre dans lequel ils ont été enregistrés. En fonction du
-    décorateur en question, celui-ci peut remplacer le contenu qui lui est passé, ou alors le faire précédé ou
-    suivre.</para>
-
-    <para>La configuration du décorateur est effectuée via son constructeur ou sa méthode <code>setOptions()</code>.
-    Lorsque vous créez des décorateurs au travers de méthodes comme <code>addDecorator()</code>, alors sa configuration
-    doit être passée en tant que tableau à ladite méthode. Ces options de configuration peuvent être utilisées pour
-    indiquer le placement du décorateur, le séparateur inter-éléments ou toute autre option acceptable.</para>
-
-    <para>Avant le rendu d'un décorateur, au travers de sa méthode <code>render()</code>, l'objet sur lequel il agit lui
-    est passé en argument, grâce à <code>setElement()</code>, et ainsi le décorateur peut piloter l'élément sur lequel
-    il agit. Ceci permet de créer des décorateurs qui n'agissent que sur un petit paramètre de l'élément auquel ils sont
-    rattachés, comme le label, les messages d'erreur, etc... En chaînant des décorateurs qui rendent chacun
-    individuellement un petit morceau d'un élément, vous pouvez créer une mise en forme complexe représentant l'objet
-    (élément) dans son intégralité.</para>
+    <para>
+        Rendre visuellement un objet de formulaire est complètement optionnel -- il n'est pas
+        obligatoire d'utiliser la méthode <code>render()</code> de <classname>Zend_Form</classname>.
+        Cependant, si vous l'utilisez, alors des décorateurs sont utilisés pour rendre les
+        différents objets du formulaire.
+    </para>
+
+    <para>
+        Un nombre arbitraire de décorateurs peut être attaché à chaque objet du formulaire
+        (élément, groupe d'affichage, sous-formulaires ou encore l'objet formulaire lui-même) ;
+        cependant seul un décorateur par type peut être attaché. Les décorateurs sont appelés dans
+        l'ordre dans lequel ils ont été enregistrés. En fonction du décorateur en question, celui-ci
+        peut remplacer le contenu qui lui est passé, ou alors le faire précédé ou suivre.
+    </para>
+
+    <para>
+        La configuration du décorateur est effectuée via son constructeur ou sa méthode
+        <code>setOptions()</code>. Lorsque vous créez des décorateurs au travers de méthodes comme
+        <code>addDecorator()</code>, alors sa configuration doit être passée en tant que tableau à
+        ladite méthode. Ces options de configuration peuvent être utilisées pour indiquer le
+        placement du décorateur, le séparateur inter-éléments ou toute autre option
+        acceptable.
+    </para>
+
+    <para>
+        Avant le rendu d'un décorateur, au travers de sa méthode <code>render()</code>,
+        l'objet sur lequel il agit lui est passé en argument, grâce à <code>setElement()</code>, et
+        ainsi le décorateur peut piloter l'élément sur lequel il agit. Ceci permet de créer des
+        décorateurs qui n'agissent que sur un petit paramètre de l'élément auquel ils sont
+        rattachés, comme le label, les messages d'erreur, etc... En chaînant des décorateurs qui
+        rendent chacun individuellement un petit morceau d'un élément, vous pouvez créer une mise en
+        forme complexe représentant l'objet (élément) dans son intégralité.
+    </para>
 
     <sect2 id="zend.form.decorators.operation">
         <title>Configuration</title>
 
-        <para>Pour configurer un décorateur, passez un tableau d'options ou un objet <classname>Zend_Config</classname> à son
-        constructeur. Aussi, un tableau peut être passé à <code>setOptions()</code>, ou un objet
-        <classname>Zend_Config</classname> à <code>setConfig()</code>.</para>
+        <para>
+            Pour configurer un décorateur, passez un tableau d'options ou un objet
+            <classname>Zend_Config</classname> à son constructeur. Aussi, un tableau peut être passé
+            à <code>setOptions()</code>, ou un objet <classname>Zend_Config</classname> à
+            <code>setConfig()</code>.
+        </para>
 
         <para>Options de base:</para>
 
         <itemizedlist>
             <listitem>
-                <para><code>placement</code> : le placement peut être 'append' ou 'prepend' (insensible à la casse), et
-                indique sur le contenu passé à <code>render()</code> doit être ajouté après ou avant, respectivement.
-                Dans le cas où le décorateur remplace le contenu, cette directive de placement est ignorée. La directive
-                par défaut est 'append'.</para>
+                <para>
+                    <code>placement</code>&#160;: le placement peut être 'append' ou 'prepend'
+                    (insensible à la casse), et indique sur le contenu passé à <code>render()</code>
+                    doit être ajouté après ou avant, respectivement. Dans le cas où le décorateur
+                    remplace le contenu, cette directive de placement est ignorée. La directive par
+                    défaut est 'append'.
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>separator</code> : Le séparateur est utilisé entre le contenu passé à <code>render()</code>
-                et le nouveau contenu généré par le décorateur, ou encore entre les éléments rendus (par exemple
-                FormElements utilise le séparateur entre chaque objet rendu). Dans le cas où le décorateur remplace son
-                contenu, cette option est ignorée. Par défaut, elle vaut <code>PHP_EOL</code>.</para>
+                <para>
+                    <code>separator</code>&#160;: le séparateur est utilisé entre le contenu passé
+                    à <code>render()</code> et le nouveau contenu généré par le décorateur, ou
+                    encore entre les éléments rendus (par exemple FormElements utilise le séparateur
+                    entre chaque objet rendu). Dans le cas où le décorateur remplace son contenu,
+                    cette option est ignorée. Par défaut, elle vaut <code>PHP_EOL</code>.
+                </para>
             </listitem>
         </itemizedlist>
 
-        <para>L'interface des décorateurs spécifie les méthodes pour agir sur les options. Les voici:</para>
+        <para>
+            L'interface des décorateurs spécifie les méthodes pour agir sur les options. Les
+            voici&#160;:
+        </para>
 
         <itemizedlist>
             <listitem>
-                <para><code>setOption($key, $value)</code> : affecte une option.</para>
+                <para><code>setOption($key, $value)</code>&#160;: affecte une option.</para>
             </listitem>
 
             <listitem>
-                <para><code>getOption($key)</code> : récupère une option.</para>
+                <para><code>getOption($key)</code>&#160;: récupère une option.</para>
             </listitem>
 
             <listitem>
-                <para><code>getOptions()</code> : récupère toutes les options.</para>
+                <para><code>getOptions()</code>&#160;: récupère toutes les options.</para>
             </listitem>
 
             <listitem>
-                <para><code>removeOption($key)</code> : supprime une option.</para>
+                <para><code>removeOption($key)</code>&#160;: supprime une option.</para>
             </listitem>
 
             <listitem>
-                <para><code>clearOptions()</code> : supprime toutes les options.</para>
+                <para><code>clearOptions()</code>&#160;: supprime toutes les options.</para>
             </listitem>
         </itemizedlist>
 
-        <para>Les décorateurs sont destinés à agir avec tous les objets du formulaire, <classname>Zend_Form</classname>,
-        <classname>Zend_Form_Element</classname>, <classname>Zend_Form_DisplayGroup</classname>, et toute classe en dérivant. La méthode
-        <code>setElement()</code> vous permet de passer l'objet au décorateur sur lequel il travaille.
-        <code>getElement()</code> vous permet de récupérer cet objet depuis le décorateur.</para>
-
-        <para>Chaque méthode <code>render()</code> des décorateurs accepte en paramètre une chaîne
-        <code>$content</code>. Lorsque le premier décorateur est appelé, cette chaîne est en toute logique vide, alors
-        que tous les appels successifs travailleront sur le contenu précédent. Selon le type de décorateur et ses
-        options, la chaîne sera alors remplacée, précédée ou suivie du nouveau contenu décoré. Dans ces deux derniers
-        cas, un séparateur optionnel peut être utilisé.</para>
+        <para>
+            Les décorateurs sont destinés à agir avec tous les objets du formulaire,
+            <classname>Zend_Form</classname>, <classname>Zend_Form_Element</classname>,
+            <classname>Zend_Form_DisplayGroup</classname>, et toute classe en dérivant. La méthode
+            <code>setElement()</code> vous permet de passer l'objet au décorateur sur lequel il
+            travaille. <code>getElement()</code> vous permet de récupérer cet objet depuis le
+            décorateur.
+        </para>
+
+        <para>
+            Chaque méthode <code>render()</code> des décorateurs accepte en paramètre une
+            chaîne <code>$content</code>. Lorsque le premier décorateur est appelé, cette chaîne est
+            en toute logique vide, alors que tous les appels successifs travailleront sur le contenu
+            précédent. Selon le type de décorateur et ses options, la chaîne sera alors remplacée,
+            précédée ou suivie du nouveau contenu décoré. Dans ces deux derniers cas, un séparateur
+            optionnel peut être utilisé.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.decorators.standard">
         <title>Décorateurs standards</title>
 
-        <para><classname>Zend_Form</classname> est fourni avec quelques décorateurs de base, voyez <link
-        linkend="zend.form.standardDecorators">le chapitre sur les décorateurs standards</link> pour plus de
-        détails.</para>
+        <para>
+            <classname>Zend_Form</classname> est fourni avec quelques décorateurs de base,
+            voyez <link linkend="zend.form.standardDecorators">le chapitre sur les décorateurs
+            standards</link> pour plus de détails.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.decorators.custom">
         <title>Décorateurs personnalisés</title>
 
-        <para>Si vos rendus HTML sont complexes, ou si vous avez besoin de beaucoup de personnalisation, vous pouvez
-        alors créer vos propres décorateurs.</para>
+        <para>
+            Si vos rendus HTML sont complexes, ou si vous avez besoin de beaucoup de
+            personnalisation, vous pouvez alors créer vos propres décorateurs.
+        </para>
 
-        <para>Les décorateurs ont juste besoin d'implémenter l'interface <classname>Zend_Decorator_Interface</classname>. Celle-ci
-        spécifie les méthodes suivantes :</para>
+        <para>
+            Les décorateurs ont juste besoin d'implémenter l'interface
+            <classname>Zend_Decorator_Interface</classname>. Celle-ci spécifie les méthodes
+            suivantes&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 interface Zend_Decorator_Interface
@@ -121,14 +159,19 @@ interface Zend_Decorator_Interface
 }
 ]]></programlisting>
 
-        <para>Pour vous simplifier la tâche, vous pourriez considérer le fait d'étendre
-        <classname>Zend_Decorator_Abstract</classname>, qui implémente toutes les méthodes de l'interface sauf
-        <code>render()</code>.</para>
+        <para>
+            Pour vous simplifier la tâche, vous pourriez considérer le fait d'étendre
+            <classname>Zend_Decorator_Abstract</classname>, qui implémente toutes les méthodes de
+            l'interface sauf <code>render()</code>.
+        </para>
 
-        <para>Par exemple, imaginons que vous ne souhaitiez pas vous encombrer avec un nombre important de décorateurs,
-        et que vous vouliez afficher les principale caractéristiques d'un élément grâce à un seul décorateur (label,
-        élément, messages d'erreur et description), le tout dans une <code>div</code>. Voici comment vous pourriez
-        procéder :</para>
+        <para>
+            Par exemple, imaginons que vous ne souhaitiez pas vous encombrer avec un nombre
+            important de décorateurs, et que vous vouliez afficher les principale caractéristiques
+            d'un élément grâce à un seul décorateur (label, élément, messages d'erreur et
+            description), le tout dans une <code>div</code>. Voici comment vous pourriez
+            procéder&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 class My_Decorator_Composite extends Zend_Form_Decorator_Abstract
@@ -216,7 +259,9 @@ class My_Decorator_Composite extends Zend_Form_Decorator_Abstract
 }
 ]]></programlisting>
 
-        <para>Vous pouvez maintenant placer ce décorateur dans les chemins des décorateurs :</para>
+        <para>
+            Vous pouvez maintenant placer ce décorateur dans les chemins des décorateurs&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 // pour un élément:
@@ -230,20 +275,29 @@ $form->addElementPrefixPath('My_Decorator',
                             'decorator');
 ]]></programlisting>
 
-        <para>Dès à présent, vous pouvez indiquer que vous voulez utiliser le décorateur 'Composite', (c'est son nom de
-        classe sans le préfixe) et l'attacher à un élément :</para>
+        <para>
+            Dès à présent, vous pouvez indiquer que vous voulez utiliser le décorateur
+            'Composite', (c'est son nom de classe sans le préfixe) et l'attacher à un
+            élément&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 // Ecrase les éventuels décorateurs de cet élément avec le notre:
 $element->setDecorators(array('Composite'));
 ]]></programlisting>
 
-        <para>Cet exemple vous montre comment rendre un contenu HTML complexe à partir de propriétés d'un élément, en
-        une seule passe. Il existe des décorateurs qui ne s'occupent que d'une propriété de l'élément auquel ils sont
-        rattachés, 'Errors' et 'Label' en sont d'excellents exemples qui permettent un placement fin.</para>
+        <para>
+            Cet exemple vous montre comment rendre un contenu HTML complexe à partir de
+            propriétés d'un élément, en une seule passe. Il existe des décorateurs qui ne s'occupent
+            que d'une propriété de l'élément auquel ils sont rattachés, 'Errors' et 'Label' en sont
+            d'excellents exemples qui permettent un placement fin.
+        </para>
 
-        <para>Par exemple, si vous souhaitez simplement informer l'utilisateur d'une erreur, mais sans lui montrer les
-        messages d'erreurs, vous pouvez créer votre propre décorateur 'Errors' :</para>
+        <para>
+            Par exemple, si vous souhaitez simplement informer l'utilisateur d'une erreur,
+            mais sans lui montrer les messages d'erreurs, vous pouvez créer votre propre décorateur
+            'Errors'&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 class My_Decorator_Errors
@@ -266,24 +320,33 @@ class My_Decorator_Errors
 }
 ]]></programlisting>
 
-        <para>Dans cet exemple particulier, comme le segment final du nom de la classe, 'Errors', respecte la syntaxe de
-        <classname>Zend_Form_Decorator_Errors</classname>, il sera alors utilisé <emphasis>à la place du</emphasis> décorateur par
-        défaut -- ceci signifie que vous n'avez pas besoin de l'injecter dans un élément particulier. En nommant vos
-        fins de classes de décorateurs comme celles des décorateurs standards, vous pouvez changer la décoration sans
-        agir sur les éléments en question.</para>
+        <para>
+            Dans cet exemple particulier, comme le segment final du nom de la classe,
+            'Errors', respecte la syntaxe de <classname>Zend_Form_Decorator_Errors</classname>, il
+            sera alors utilisé <emphasis>à la place du</emphasis> décorateur par défaut -- ceci
+            signifie que vous n'avez pas besoin de l'injecter dans un élément particulier. En
+            nommant vos fins de classes de décorateurs comme celles des décorateurs standards, vous
+            pouvez changer la décoration sans agir sur les éléments en question.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.decorators.individual">
         <title>Rendre des décorateurs individuellement</title>
 
-        <para>Comme les décorateurs agissent souvent sur une propriété d'un élément, et en fonction de la décoration
-        précédente, il peut être utile d'afficher juste le rendu d'un décorateur particulier, sur un élément. Ceci est
-        possible par la surcharge des méthodes dans les classes principales de Zend_Form (formulaires, sous-formulaires,
-        groupes d'affichage, éléments).</para>
-
-        <para>Pour effectuer ceci, appelez simplement <code>render[nom-du-décorateur]()</code>, où "[nom-du-décorateur]"
-        est le nom court de votre décorateur (sans son préfixe de classe). Il est aussi possible de lui passer
-        optionnellement du contenu, par exemple :</para>
+        <para>
+            Comme les décorateurs agissent souvent sur une propriété d'un élément, et en
+            fonction de la décoration précédente, il peut être utile d'afficher juste le rendu d'un
+            décorateur particulier, sur un élément. Ceci est possible par la surcharge des méthodes
+            dans les classes principales de Zend_Form (formulaires, sous-formulaires, groupes
+            d'affichage, éléments).
+        </para>
+
+        <para>
+            Pour effectuer ceci, appelez simplement <code>render[nom-du-décorateur]()</code>,
+            où "[nom-du-décorateur]" est le nom court de votre décorateur (sans son préfixe de
+            classe). Il est aussi possible de lui passer optionnellement du contenu, par
+            exemple&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 // rend juste le décorateur Label de cet élément:
@@ -298,8 +361,11 @@ echo $form->renderHtmlTag('wrap this content');
 
         <para>Si le décorateur n'existe pas, une exception sera levée.</para>
 
-        <para>Ceci peut être particulièrement utile lors du rendu d'un formulaire avec le décorateur ViewScript ; là où
-        chaque élément utilise ses décorateurs pour rendre du contenu, mais de manière très fine.</para>
+        <para>
+            Ceci peut être particulièrement utile lors du rendu d'un formulaire avec le
+            décorateur ViewScript&#160;; là où chaque élément utilise ses décorateurs pour rendre du
+            contenu, mais de manière très fine.
+        </para>
     </sect2>
 </sect1>
 <!--

+ 104 - 54
documentation/manual/fr/module_specs/Zend_Form-I18n.xml

@@ -1,40 +1,56 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 13843 -->
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- EN-Revision: 15215 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.i18n">
     <title>Internationaliser un formulaire Zend_Form</title>
 
-    <para>De plus en plus de développeurs ont besoin de fournir des applications multilingues. <classname>Zend_Form</classname>
-    propose des moyens simples dans ce but, et gère cette responsabilité en tandem avec <link
-    linkend="zend.translate">Zend_Translate</link> et <link linkend="zend.validate">Zend_Validate</link>.</para>
-
-    <para>Par défaut, aucune internationalisation (i18n) n'est effectuée. Pour l'activer dans <classname>Zend_Form</classname>,
-    vous devrez instancier un objet <classname>Zend_Translate</classname> avec un adaptateur et l'attacher à
-    <classname>Zend_Form</classname> et/ou <classname>Zend_Validate</classname>. Voyez la <link linkend="zend.translate">documentation de
-    Zend_Translate</link> pour plus d'informations sur la création de son objet et de ses adaptateurs.</para>
+    <para>
+        De plus en plus de développeurs ont besoin de fournir des applications multilingues.
+        <classname>Zend_Form</classname> propose des moyens simples dans ce but, et gère cette
+        responsabilité en tandem avec <link linkend="zend.translate">Zend_Translate</link> et <link
+        linkend="zend.validate">Zend_Validate</link>.
+    </para>
+
+    <para>
+        Par défaut, aucune internationalisation (i18n) n'est effectuée. Pour l'activer dans
+        <classname>Zend_Form</classname>, vous devrez instancier un objet
+        <classname>Zend_Translate</classname> avec un adaptateur et l'attacher à
+        <classname>Zend_Form</classname> et/ou <classname>Zend_Validate</classname>. Voyez la <link
+        linkend="zend.translate">documentation de Zend_Translate</link> pour plus d'informations sur
+        la création de son objet et de ses adaptateurs.
+    </para>
 
     <note>
         <title>L'i18n peut être désactivée par objet</title>
 
-        <para>Vous pouvez désactiver la traduction pour tout formulaire, élément, groupe d'affichage ou sous-formulaire
-        en appelant sa méthode <code>setDisableTranslator($flag)</code> ou en lui passant un paramètre
-        <code>disableTranslator</code>. Ceci peut être utile pour désactiver l'i18n pour des éléments de formulaires
-        individuels, ou des groupes d'éléments par exemple.</para>
+        <para>
+            Vous pouvez désactiver la traduction pour tout formulaire, élément, groupe
+            d'affichage ou sous-formulaire en appelant sa méthode
+            <code>setDisableTranslator($flag)</code> ou en lui passant un paramètre
+            <code>disableTranslator</code>. Ceci peut être utile pour désactiver l'i18n pour des
+            éléments de formulaires individuels, ou des groupes d'éléments par exemple.
+        </para>
     </note>
 
     <sect2 id="zend.form.i18n.initialization">
         <title>Initialiser l'i18n dans les formulaires</title>
 
-        <para>Pour activer les traductions dans vos formulaires, vous avez besoin soit d'un objet
-        <classname>Zend_Translate</classname> complet, ou alors d'un objet <classname>Zend_Translate_Adapter</classname> , comme ceci est
-        détaillé dans la documentation de <classname>Zend_Translate</classname>. Une fois un objet d'i18n en votre possession,
-        plusieurs choix s'offrent à vous :</para>
+        <para>
+            Pour activer les traductions dans vos formulaires, vous avez besoin soit d'un
+            objet <classname>Zend_Translate</classname> complet, ou alors d'un objet
+            <classname>Zend_Translate_Adapter</classname> , comme ceci est détaillé dans la
+            documentation de <classname>Zend_Translate</classname>. Une fois un objet d'i18n en
+            votre possession, plusieurs choix s'offrent à vous&#160;:
+        </para>
 
         <itemizedlist>
             <listitem>
-                <para><emphasis>Le plus simple :</emphasis> ajoutez l'objet d'i18n dans le registre. Tout composant
-                utilisant l'i18n dans Zend Framework a la capacité de découvrir de lui-même un objet de traduction si
-                celui-ci est enregistré dans le registre à la clé "Zend_Translate" :</para>
+                <para>
+                    <emphasis>Le plus simple</emphasis>&#160;: ajoutez l'objet d'i18n dans le
+                    registre. Tout composant utilisant l'i18n dans Zend Framework a la capacité de
+                    découvrir de lui-même un objet de traduction si celui-ci est enregistré dans le
+                    registre à la clé "Zend_Translate"&#160;:
+                </para>
 
                 <programlisting role="php"><![CDATA[
 // utilisez la clé registre 'Zend_Translate' ;
@@ -42,13 +58,19 @@
 Zend_Registry::set('Zend_Translate', $translate);
 ]]></programlisting>
 
-                <para>Cet objet sera cherché par <classname>Zend_Form</classname>, <classname>Zend_Validate</classname>, et
-                <classname>Zend_View_Helper_Translate</classname>.</para>
+                <para>
+                    Cet objet sera cherché par <classname>Zend_Form</classname>,
+                    <classname>Zend_Validate</classname>, et
+                    <classname>Zend_View_Helper_Translate</classname>.
+                </para>
             </listitem>
 
             <listitem>
-                <para>Si tout ce qui vous importe est la traduction des messages d'erreurs, vous pouvez ajouter l'objet
-                de traduction à <classname>Zend_Validate_Abstract</classname> :</para>
+                <para>
+                    Si tout ce qui vous importe est la traduction des messages d'erreurs, vous
+                    pouvez ajouter l'objet de traduction à
+                    <classname>Zend_Validate_Abstract</classname>&#160;:
+                </para>
 
                 <programlisting role="php"><![CDATA[
 // Indique aux classes de validation d'utiliser
@@ -58,9 +80,12 @@ Zend_Validate_Abstract::setDefaultTranslator($translate);
             </listitem>
 
             <listitem>
-                <para>Autre manière de procéder; attacher un objet de traduction à <classname>Zend_Form</classname> de manière
-                générale. Ceci aura pour effet, entres-autres, de gérer la traduction des messages d'erreur de la
-                validation :</para>
+                <para>
+                    Autre manière de procéder; attacher un objet de traduction à
+                    <classname>Zend_Form</classname> de manière générale. Ceci aura pour effet,
+                    entres-autres, de gérer la traduction des messages d'erreur de la
+                    validation&#160;:
+                </para>
 
                 <programlisting role="php"><![CDATA[
 // Indique à toutes les classes de formulaire d'utiliser un objet de traduction
@@ -71,8 +96,11 @@ Zend_Form::setDefaultTranslator($translate);
             </listitem>
 
             <listitem>
-                <para>Enfin, il est possible d'attacher un objet de traduction à une instance du formulaire, ou à un ou
-                plusieurs de ses éléments, grâce à <code>setTranslator()</code> :</para>
+                <para>
+                    Enfin, il est possible d'attacher un objet de traduction à une instance du
+                    formulaire, ou à un ou plusieurs de ses éléments, grâce à
+                    <code>setTranslator()</code>&#160;:
+                </para>
 
                 <programlisting role="php"><![CDATA[
 // Indique à *cette* instance de formulaire, d'utiliser un objet de
@@ -92,48 +120,70 @@ $element->setTranslator($translate);
     <sect2 id="zend.form.i18n.standard">
         <title>Cibles gérées par l'I18n</title>
 
-        <para>Maintenant que vous avez attaché un objet de traduction, que pouvez vous faire avec ?</para>
+        <para>
+            Maintenant que vous avez attaché un objet de traduction, que pouvez vous faire
+            avec&#160;?
+        </para>
 
         <itemizedlist>
             <listitem>
-                <para><emphasis>Messages d'erreur des validateurs :</emphasis> les messages d'erreurs des validateurs
-                peuvent être traduits. Pour cela, utilisez les identifiants des messages des validateurs (constantes de
-                vos validateurs <classname>Zend_Validate</classname>. Pour plus d'informations sur ces clés, voyez la
-                documentation de <link linkend="zend.validate">Zend_Validate</link>.</para>
-
-                <para>Aussi, depuis la version 1.6.0, vous pouvez fournir des chaînes de traduction en utilisant les
-                messages d'erreur actuels comme identifiants. C'est le comportement recommandé pour 1.6.0 ou
-                supérieures, nous allons déprécier l'utilisation des clés (constantes de classe) dans les prochaines
-                versions.</para>
+                <para>
+                    <emphasis>Messages d'erreur des validateurs</emphasis>&#160;: les messages
+                    d'erreurs des validateurs peuvent être traduits. Pour cela, utilisez les
+                    identifiants des messages des validateurs (constantes de vos validateurs
+                    <classname>Zend_Validate</classname>. Pour plus d'informations sur ces clés,
+                    voyez la documentation de <link
+                    linkend="zend.validate">Zend_Validate</link>.
+                </para>
+
+                <para>
+                    Aussi, depuis la version 1.6.0, vous pouvez fournir des chaînes de
+                    traduction en utilisant les messages d'erreur actuels comme identifiants. C'est
+                    le comportement recommandé pour 1.6.0 ou supérieures, nous allons déprécier
+                    l'utilisation des clés (constantes de classe) dans les prochaines
+                    versions.
+                </para>
             </listitem>
 
             <listitem>
-                <para><emphasis>Labels :</emphasis> les labels des éléments seront traduits si un objet de traduction et
-                une chaîne de traduction existent.</para>
+                <para>
+                    <emphasis>Labels</emphasis>&#160;: les labels des éléments seront traduits si
+                    un objet de traduction et une chaîne de traduction existent.
+                </para>
             </listitem>
 
             <listitem>
-                <para><emphasis>Légende des Fieldset :</emphasis> les groupes d'éléments et les sous-formulaires sont
-                rendus dans des "fieldsets" par défaut. Le décorateur FieldSet essaye de traduire la légende via l'objet
-                de traduction.</para>
+                <para>
+                    <emphasis>Légende des Fieldset</emphasis>&#160;: les groupes d'éléments et les
+                    sous-formulaires sont rendus dans des "fieldsets" par défaut. Le décorateur
+                    FieldSet essaye de traduire la légende via l'objet de traduction.
+                </para>
             </listitem>
 
             <listitem>
-                <para><emphasis>Description des formulaires et éléments de formulaire : </emphasis>tous les types
-                relatifs au formulaire (éléments, formulaires, groupes d'éléments ou sous-formulaires) permettent de
-                spécifier une description optionnelle. Le décorateur Description essaye de traduire la
-                description.</para>
+                <para>
+                    <emphasis>Description des formulaires et éléments de
+                    formulaire</emphasis>&#160;: tous les types relatifs au formulaire (éléments,
+                    formulaires, groupes d'éléments ou sous-formulaires) permettent de spécifier
+                    une description optionnelle. Le décorateur Description essaye de traduire la
+                    description.
+                </para>
             </listitem>
 
             <listitem>
-                <para><emphasis>Valeurs de Multi-option :</emphasis> les éléments héritant de
-                <classname>Zend_Form_Element_Multi</classname>(MultiCheckbox, Multiselect, et Radio) peuvent aussi traduire les
-                valeurs (et non les clés) de leurs options.</para>
+                <para>
+                    <emphasis>Valeurs de Multi-option</emphasis>&#160;: les éléments héritant de
+                    <classname>Zend_Form_Element_Multi</classname>(MultiCheckbox, Multiselect, et
+                    Radio) peuvent aussi traduire les valeurs (et non les clés) de leurs
+                    options.
+                </para>
             </listitem>
 
             <listitem>
-                <para><emphasis>Labels de Submit et Button :</emphasis> les boutons (éléments Submit, Button et Reset)
-                vont traduire le label affiché à l'utilisateur.</para>
+                <para>
+                    <emphasis>Labels de Submit et Button</emphasis>&#160;: les boutons (éléments
+                    Submit, Button et Reset) vont traduire le label affiché à l'utilisateur.
+                </para>
             </listitem>
         </itemizedlist>
     </sect2>

+ 12 - 7
documentation/manual/fr/module_specs/Zend_Form-Introduction.xml

@@ -1,11 +1,13 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 13843 -->
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- EN-Revision: 15103 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.introduction">
     <title>Zend_Form</title>
 
-    <para><classname>Zend_Form</classname> simplifie la création et la gestion des formulaires dans vos applications Web. Il
-    accomplit les buts suivants :</para>
+    <para>
+        <classname>Zend_Form</classname> simplifie la création et la gestion des formulaires
+        dans vos applications Web. Il accomplit les buts suivants&#160;:
+    </para>
 
     <itemizedlist>
         <listitem>
@@ -29,7 +31,10 @@
         </listitem>
     </itemizedlist>
 
-    <para>Il utilise fortement d'autres composants de Zend Framework pour accomplir ses buts, incluant
-    <classname>Zend_Config</classname>, <classname>Zend_Validate</classname>, <classname>Zend_Filter</classname>,
-    <classname>Zend_Loader_PluginLoader</classname>, et optionnellement <classname>Zend_View</classname>.</para>
+    <para>
+        Il utilise fortement d'autres composants de Zend Framework pour accomplir ses buts,
+        incluant <classname>Zend_Config</classname>, <classname>Zend_Validate</classname>,
+        <classname>Zend_Filter</classname>, <classname>Zend_Loader_PluginLoader</classname>, et
+        optionnellement <classname>Zend_View</classname>.
+    </para>
 </sect1>

+ 209 - 110
documentation/manual/fr/module_specs/Zend_Form-QuickStart.xml

@@ -1,38 +1,50 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 13843 -->
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- EN-Revision: 15341 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.quickstart">
     <title>Zend_Form démarrage rapide</title>
 
-    <para>Ce guide rapide couvre les bases de la création, de la validation, et du rendu des formulaires
-    <classname>Zend_Form</classname>.</para>
+    <para>
+        Ce guide rapide couvre les bases de la création, de la validation, et du rendu des
+        formulaires <classname>Zend_Form</classname>.
+    </para>
 
     <sect2 id="zend.form.quickstart.create">
         <title>Créer un objet de formulaire</title>
 
-        <para>Instanciez simplement un objet <classname>Zend_Form</classname> :</para>
+        <para>Instanciez simplement un objet <classname>Zend_Form</classname>&#160;:</para>
 
         <programlisting role="php"><![CDATA[
 $form = new Zend_Form;
 ]]></programlisting>
 
-        <para>Pour des usages avancés, vous voudriez probablement dériver <classname>Zend_Form</classname>, mais pour les
-        formulaires simples, vous pouvez créez un formulaire depuis une instance de <classname>Zend_Form</classname>.</para>
+        <para>
+            Pour des usages avancés, vous voudriez probablement dériver
+            <classname>Zend_Form</classname>, mais pour les formulaires simples, vous pouvez créez
+            un formulaire depuis une instance de <classname>Zend_Form</classname>.
+        </para>
 
-        <para>Vous pouvez spécifier (c'est une bonne idée) l'action et la méthode d'envoi du formulaire grâce à
-        <code>setAction()</code> et <code>setMethod()</code> :</para>
+        <para>
+            Vous pouvez spécifier (c'est une bonne idée) l'action et la méthode d'envoi du
+            formulaire grâce à <code>setAction()</code> et <code>setMethod()</code>&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 $form->setAction('/resource/process')
      ->setMethod('post');
 ]]></programlisting>
 
-        <para>Le code ci-dessus indique au formulaire d'être envoyé vers l'URL "/resource/process" avec la méthode HTTP
-        POST. Ceci va impacter le rendu du formulaire (la balise <code>&lt;form&gt;</code>).</para>
+        <para>
+            Le code ci-dessus indique au formulaire d'être envoyé vers l'URL
+            "/resource/process" avec la méthode HTTP POST. Ceci va impacter le rendu du formulaire
+            (la balise <code>&lt;form&gt;</code>).
+        </para>
 
-        <para>Il est possible d'assigner les attributs HTML supplémentaires à la balise <code>&lt;form&gt;</code> via la
-        méthode <code>setAttrib()</code> ou encore <code>setAttribs()</code>. Par exemple, indiquons un attribut "id" au
-        formulaire :</para>
+        <para>
+            Il est possible d'assigner les attributs HTML supplémentaires à la balise
+            <code>&lt;form&gt;</code> via la méthode <code>setAttrib()</code> ou encore
+            <code>setAttribs()</code>. Par exemple, indiquons un attribut "id" au formulaire&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 $form->setAttrib('id', 'login');
@@ -42,8 +54,11 @@ $form->setAttrib('id', 'login');
     <sect2 id="zend.form.quickstart.elements">
         <title>Ajouter des éléments au formulaire</title>
 
-        <para>Un formulaire ne sert à rien sans éléments. Le composant <classname>Zend_Form</classname> est fourni avec un
-        ensemble d'éléments qui rendent du code XHTML via les aides de <classname>Zend_View</classname>. Voici ces aides :</para>
+        <para>
+            Un formulaire ne sert à rien sans éléments. Le composant
+            <classname>Zend_Form</classname> est fourni avec un ensemble d'éléments qui rendent du
+            code XHTML via les aides de <classname>Zend_View</classname>. Voici ces aides&#160;:
+        </para>
 
         <itemizedlist>
             <listitem>
@@ -91,11 +106,13 @@ $form->setAttrib('id', 'login');
             </listitem>
         </itemizedlist>
 
-        <para>Vous avez 2 manières de procéder pour ajouter les éléments au formulaire : instanciez vous même les objets
-        des éléments, ou passer le type d'élément à <classname>Zend_Form</classname>, qui va alors créer le bon objet pour
-        vous.</para>
+        <para>
+            Vous avez 2 manières de procéder pour ajouter les éléments au formulaire :
+            instanciez vous même les objets des éléments, ou passer le type d'élément à
+            <classname>Zend_Form</classname>, qui va alors créer le bon objet pour vous.
+        </para>
 
-        <para>Quelques exemples :</para>
+        <para>Quelques exemples&#160;:</para>
 
         <programlisting role="php"><![CDATA[
 // Ajout d'un objet élément :
@@ -105,13 +122,19 @@ $form->addElement(new Zend_Form_Element_Text('username'));
 $form->addElement('text', 'username');
 ]]></programlisting>
 
-        <para>Par défaut, ces éléments n'ont ni validateurs, ni filtres. Vous devrez donc ajoutez des validateurs et/ou
-        des filtres, manuellement. Ceci est possible soit (a) avant de passer l'élément au formulaire, (b) via les
-        options de configuration passés lors de la création de l'élément, ou (c) en récupérant l'objet déjà enregistré,
-        depuis le formulaire, et en le configurant ensuite.</para>
+        <para>
+            Par défaut, ces éléments n'ont ni validateurs, ni filtres. Vous devrez donc
+            ajoutez des validateurs et/ou des filtres, manuellement. Ceci est possible soit (a)
+            avant de passer l'élément au formulaire, (b) via les options de configuration passés
+            lors de la création de l'élément, ou (c) en récupérant l'objet déjà enregistré, depuis
+            le formulaire, et en le configurant ensuite.
+        </para>
 
-        <para>Voyons comment passer un validateur à un élément dont nous créons l'objet. On peut passer soit l'objet
-        <classname>Zend_Validate_*</classname>, soit une chaîne le décrivant :</para>
+        <para>
+            Voyons comment passer un validateur à un élément dont nous créons l'objet. On peut
+            passer soit l'objet <classname>Zend_Validate_*</classname>, soit une chaîne le
+            décrivant&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 $username = new Zend_Form_Element_Text('username');
@@ -123,36 +146,50 @@ $username->addValidator(new Zend_Validate_Alnum());
 $username->addValidator('alnum');
 ]]></programlisting>
 
-        <para>En utilisant la technique de passage par le nom, vous pouvez ajouter un tableau d'options à passer au
-        constructeur de l'objet validateur. Ceci se fait en troisième paramètre :</para>
+        <para>
+            En utilisant la technique de passage par le nom, vous pouvez ajouter un tableau
+            d'options à passer au constructeur de l'objet validateur. Ceci se fait en troisième
+            paramètre&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 // Passage d'options au validateur
 $username->addValidator('regex', false, array('/^[a-z]/i'));
 ]]></programlisting>
 
-        <para>(Le second paramètre permet d'indiquer au validateur s'il doit briser la chaîne de validation ou non. Par
-        défaut, <code>false</code> : ce n'est donc pas le cas.)</para>
+        <para>
+            (Le second paramètre permet d'indiquer au validateur s'il doit briser la chaîne de
+            validation ou non. Par défaut, <code>false</code> : ce n'est donc pas le cas.)
+        </para>
 
-        <para>Vous pouvez avoir besoin de spécifier qu'un élément est requis. Ceci peut être fait en utilisant un
-        accesseur ou en passant une option à la création de l'élément. Voici un exemple :</para>
+        <para>
+            Vous pouvez avoir besoin de spécifier qu'un élément est requis. Ceci peut être
+            fait en utilisant un accesseur ou en passant une option à la création de l'élément.
+            Voici un exemple&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 // Cet élément est requis:
 $username->setRequired(true);
 ]]></programlisting>
 
-        <para>Lorsqu'un élément est requis, un validateur "NotEmpty" lui est ajouté, sur le dessus de sa pile de
-        validateurs.</para>
+        <para>
+            Lorsqu'un élément est requis, un validateur "NotEmpty" lui est ajouté, sur le
+            dessus de sa pile de validateurs.
+        </para>
 
-        <para>La gestion des filtres est très semblable à celle des validateurs. Voyons comment ajouter un filtre qui
-        retourne la donnée en minuscules :</para>
+        <para>
+            La gestion des filtres est très semblable à celle des validateurs. Voyons comment
+            ajouter un filtre qui retourne la donnée en minuscules :
+        </para>
 
         <programlisting role="php"><![CDATA[
 $username->addFilter('StringtoLower');
 ]]></programlisting>
 
-        <para>Finalement, la configuration complète de l'élément pourra ressembler à cela :</para>
+        <para>
+            Finalement, la configuration complète de l'élément pourra ressembler à cela&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 $username->addValidator('alnum')
@@ -168,10 +205,13 @@ $username->addValidators(array('alnum',
     ->addFilters(array('StringToLower'));
 ]]></programlisting>
 
-        <para>Aussi simple que cela puisse paraître, cela peut très vite devenir fastidieux de répéter ces opérations
-        sur tous les éléments du formulaire. Reprenons le cas (b) d'au dessus : lorsque l'on crée un élément,
-        <classname>Zend_Form::addElement()</classname> agit comme une fabrique et on peut lui passer des options de configuration.
-        Par exemple, des validateurs ou des filtres. Essayons ceci :</para>
+        <para>
+            Aussi simple que cela puisse paraître, cela peut très vite devenir fastidieux de
+            répéter ces opérations sur tous les éléments du formulaire. Reprenons le cas (b) d'au
+            dessus : lorsque l'on crée un élément, <classname>Zend_Form::addElement()</classname>
+            agit comme une fabrique et on peut lui passer des options de configuration. Par exemple,
+            des validateurs ou des filtres. Essayons ceci&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 $form->addElement('text', 'username', array(
@@ -185,18 +225,23 @@ $form->addElement('text', 'username', array(
 ]]></programlisting>
 
         <note>
-            <para>Si vous vous apercevez que vous créez des éléments basés sur les mêmes options, étendre
-            <classname>Zend_Form_Element</classname> peut devenir une bonne option. Votre nouvelle classe configurera directement
-            vos objets.</para>
+            <para>
+                Si vous vous apercevez que vous créez des éléments basés sur les mêmes
+                options, étendre <classname>Zend_Form_Element</classname> peut devenir une bonne
+                option. Votre nouvelle classe configurera directement vos objets.
+            </para>
         </note>
     </sect2>
 
     <sect2 id="zend.form.quickstart.render">
         <title>Rendre (visuellement) un formulaire</title>
 
-        <para>Rendre un formulaire est très simple. La plupart des éléments nécessitent les aides de vue
-        <classname>Zend_View</classname> pour être rendus. Ils ont donc besoin d'un objet de vue. Pour rendre un formulaire,
-        appelez sa méthode <code>render()</code> ou faites un <code>echo</code> devant l'objet.</para>
+        <para>
+            Rendre un formulaire est très simple. La plupart des éléments nécessitent les
+            aides de vue <classname>Zend_View</classname> pour être rendus. Ils ont donc besoin d'un
+            objet de vue. Pour rendre un formulaire, appelez sa méthode <code>render()</code> ou
+            faites un <code>echo</code> devant l'objet.
+        </para>
 
         <programlisting role="php"><![CDATA[
 // Appel explicite de render() :
@@ -206,19 +251,27 @@ echo $form->render($view);
 echo $form;
 ]]></programlisting>
 
-        <para>Par défaut, <classname>Zend_Form</classname> et les <classname>Zend_Form_Element</classname> vont essayer de récupérer l'objet
-        de vue depuis l'aide d'action <code>ViewRenderer</code>, ce qui signifie que vous n'aurez pas besoin de
-        spécifier un objet de vue manuellement si vous utilisez le système MVC de Zend Framework. Pour rendre un
-        formulaire dans une vue MVC, un simple <code>echo</code> suffit :</para>
+        <para>
+            Par défaut, <classname>Zend_Form</classname> et les
+            <classname>Zend_Form_Element</classname> vont essayer de récupérer l'objet de vue depuis
+            l'aide d'action <code>ViewRenderer</code>, ce qui signifie que vous n'aurez pas besoin
+            de spécifier un objet de vue manuellement si vous utilisez le système MVC de Zend
+            Framework. Pour rendre un formulaire dans une vue MVC, un simple <code>echo</code>
+            suffit&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 <?php echo $this->form ?>
 ]]></programlisting>
 
-        <para>Techniquement, <classname>Zend_Form</classname> utilise des "décorateurs" pour effectuer le rendu visuel. Ces
-        décorateurs peuvent remplacer le contenu, ou le placer avant ou après. Ils peuvent aussi introspecter l'élément
-        qui leur est passé. Ainsi, vous pouvez chaîner plusieurs décorateurs pour utiliser des effets visuels. Par
-        défaut, <classname>Zend_Form_Element</classname> combine quatre décorateurs pour s'afficher :</para>
+        <para>
+            Techniquement, <classname>Zend_Form</classname> utilise des "décorateurs" pour
+            effectuer le rendu visuel. Ces décorateurs peuvent remplacer le contenu, ou le placer
+            avant ou après. Ils peuvent aussi introspecter l'élément qui leur est passé. Ainsi, vous
+            pouvez chaîner plusieurs décorateurs pour utiliser des effets visuels. Par défaut,
+            <classname>Zend_Form_Element</classname> combine quatre décorateurs pour
+            s'afficher&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 $element->addDecorators(array(
@@ -229,9 +282,14 @@ $element->addDecorators(array(
 ));
 ]]></programlisting>
 
-        <para>(Où &lt;HELPERNAME&gt; est le nom de l'aide de vue à utiliser, qui varie selon l'élément à rendre.)</para>
+        <para>
+            (Où &lt;HELPERNAME&gt; est le nom de l'aide de vue à utiliser, qui varie selon
+            l'élément à rendre.)
+        </para>
 
-        <para>Les décorateurs par défaut (rappelés ci-dessus), produisent le rendu suivant :</para>
+        <para>
+            Les décorateurs par défaut (rappelés ci-dessus), produisent le rendu suivant&#160;:
+        </para>
 
         <programlisting role="html"><![CDATA[
 <dt><label for="username" class="required">Username</dt>
@@ -246,21 +304,29 @@ $element->addDecorators(array(
 
         <para>(Le formatage peut un peu changer.)</para>
 
-        <para>Vous pouvez changer les décorateurs utilisés par un élément si vous voulez avoir un visuel différent ;
-        voyez la section sur les décorateurs pour plus d'informations.</para>
+        <para>
+            Vous pouvez changer les décorateurs utilisés par un élément si vous voulez avoir
+            un visuel différent&#160;; voyez la section sur les décorateurs pour plus
+            d'informations.
+        </para>
 
-        <para>Le formulaire boucle sur ses éléments et entoure leur rendu d'une balise HTML <code>&lt;form&gt;</code>.
-        Cette balise prend en compte la méthode, l'action, et les éventuels attributs passés via
-        <code>setAttribs()</code>.</para>
+        <para>
+            Le formulaire boucle sur ses éléments et entoure leur rendu d'une balise HTML
+            <code>&lt;form&gt;</code>. Cette balise prend en compte la méthode, l'action, et les
+            éventuels attributs passés via <code>setAttribs()</code>.
+        </para>
 
-        <para>Les éléments sont bouclés dans l'ordre dans lequel ils sont ajoutés, ou, si votre élément possède un
-        attribut "order", celui-ci sera alors utilisé pour gérer sa place dans la pile des éléments :</para>
+        <para>
+            Les éléments sont bouclés dans l'ordre dans lequel ils sont ajoutés, ou, si votre
+            élément possède un attribut "order", celui-ci sera alors utilisé pour gérer sa place
+            dans la pile des éléments&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 $element->setOrder(10);
 ]]></programlisting>
 
-        <para>Ou encore, à la création de l'élément via <code>addElement()</code> :</para>
+        <para>Ou encore, à la création de l'élément via <code>addElement()</code>&#160;:</para>
 
         <programlisting role="php"><![CDATA[
 $form->addElement('text', 'username', array('order' => 10));
@@ -270,12 +336,18 @@ $form->addElement('text', 'username', array('order' => 10));
     <sect2 id="zend.form.quickstart.validate">
         <title>Vérifier qu'un formulaire est valide</title>
 
-        <para>Après l'envoi du formulaire, il faut vérifier les valeurs que contiennent ses éléments. Tous les
-        validateurs de chaque élément sont donc interrogés. Si l'élément était marqué comme requis et que l'élément ne
-        reçoit aucune donnée, les validateurs suivants agiront sur une valeur <code>null</code>.</para>
+        <para>
+            Après l'envoi du formulaire, il faut vérifier les valeurs que contiennent ses
+            éléments. Tous les validateurs de chaque élément sont donc interrogés. Si l'élément
+            était marqué comme requis et que l'élément ne reçoit aucune donnée, les validateurs
+            suivants agiront sur une valeur <code>null</code>.
+        </para>
 
-        <para>D'où proviennent les données ? Vous pouvez utiliser <code>$_POST</code> ou <code>$_GET</code>, ou
-        n'importe quelle source de données (service Web par exemple) :</para>
+        <para>
+            D'où proviennent les données ? Vous pouvez utiliser <code>$_POST</code> ou
+            <code>$_GET</code>, ou n'importe quelle source de données (service Web par
+            exemple)&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 if ($form->isValid($_POST)) {
@@ -285,9 +357,12 @@ if ($form->isValid($_POST)) {
 }
 ]]></programlisting>
 
-        <para>Avec des requêtes AJAX, il arrive que l'on ait besoin de ne valider qu'un élément, ou un groupe d'élément.
-        <code>isValidPartial()</code> validera un formulaire partiel. Contrairement à <code>isValid()</code>, si une
-        valeur est absente, les autres validateurs ne seront pas interrogés:</para>
+        <para>
+            Avec des requêtes AJAX, il arrive que l'on ait besoin de ne valider qu'un élément,
+            ou un groupe d'élément. <code>isValidPartial()</code> validera un formulaire partiel.
+            Contrairement à <code>isValid()</code>, si une valeur est absente, les autres
+            validateurs ne seront pas interrogés&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 if ($form->isValidPartial($_POST)) {
@@ -297,18 +372,22 @@ if ($form->isValidPartial($_POST)) {
 }
 ]]></programlisting>
 
-        <para>La méthode <code>processAjax()</code> peut aussi être utilisée pour valider partiellement un formulaire.
-        Contrairement à <code>isValidPartial()</code>, cette méthode retournera les messages d'erreur de validation au
-        format JSON.</para>
+        <para>
+            La méthode <code>processAjax()</code> peut aussi être utilisée pour valider
+            partiellement un formulaire. Contrairement à <code>isValidPartial()</code>, cette
+            méthode retournera les messages d'erreur de validation au format JSON.
+        </para>
 
-        <para>En supposant que les validateurs aient passé, vous pouvez dès lors récupérer les valeurs filtrées depuis
-        les éléments :</para>
+        <para>
+            En supposant que les validateurs aient passé, vous pouvez dès lors récupérer les
+            valeurs filtrées depuis les éléments&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 $values = $form->getValues();
 ]]></programlisting>
 
-        <para>Si vous désirez les valeurs non filtrées, utilisez :</para>
+        <para>Si vous désirez les valeurs non filtrées, utilisez&#160;:</para>
 
         <programlisting role="php"><![CDATA[
 $unfiltered = $form->getUnfilteredValues();
@@ -318,8 +397,10 @@ $unfiltered = $form->getUnfilteredValues();
     <sect2 id="zend.form.quickstart.errorstatus">
         <title>Les statuts d'erreur</title>
 
-        <para>Votre formulaire a échoué à l'envoi ? Dans la plupart des cas, vous voudrez rendre à nouveau le
-        formulaire, mais avec les messages d'erreur affichés :</para>
+        <para>
+            Votre formulaire a échoué à l'envoi ? Dans la plupart des cas, vous voudrez rendre
+            à nouveau le formulaire, mais avec les messages d'erreur affichés&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 if (!$form->isValid($_POST)) {
@@ -331,17 +412,22 @@ if (!$form->isValid($_POST)) {
 }
 ]]></programlisting>
 
-        <para>Si vous voulez inspecter les erreurs, 2 méthodes s'offrent à vous. <code>getErrors()</code> retourne un
-        tableau associatif avec en clé le nom de l'élément et en valeur un tableau de codes d'erreurs.
-        <code>getMessages()</code> retourne un tableau associatif avec en clé le nom de l'élément, et en valeur un
-        tableau de messages d'erreurs (code=&gt;message). Tout élément ne comportant pas d'erreur ne sera pas inclus
-        dans le tableau.</para>
+        <para>
+            Si vous voulez inspecter les erreurs, 2 méthodes s'offrent à vous.
+            <code>getErrors()</code> retourne un tableau associatif avec en clé le nom de l'élément
+            et en valeur un tableau de codes d'erreurs. <code>getMessages()</code> retourne un
+            tableau associatif avec en clé le nom de l'élément, et en valeur un tableau de messages
+            d'erreurs (code=&gt;message). Tout élément ne comportant pas d'erreur ne sera pas inclus
+            dans le tableau.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.quickstart.puttingtogether">
         <title>Assembler le tout ensemble</title>
 
-        <para>Créons un formulaire de d'authentification. Il aura besoin d'élément représentant :</para>
+        <para>
+            Créons un formulaire de d'authentification. Il aura besoin d'élément représentant&#160;:
+        </para>
 
         <itemizedlist>
             <listitem>
@@ -357,12 +443,17 @@ if (!$form->isValid($_POST)) {
             </listitem>
         </itemizedlist>
 
-        <para>Pour notre exemple, imaginons un nom composé de caractères alphanumériques uniquement. Le nom commencera
-        par une lettre, et devra faire entre 6 et 20 caractères de long, qui seront normalisés en lettres minuscules.
-        Les mots de passe feront 6 caractères minimum.</para>
+        <para>
+            Pour notre exemple, imaginons un nom composé de caractères alphanumériques
+            uniquement. Le nom commencera par une lettre, et devra faire entre 6 et 20 caractères de
+            long, qui seront normalisés en lettres minuscules. Les mots de passe feront 6 caractères
+            minimum.
+        </para>
 
-        <para>Nous allons utiliser la puissance de <classname>Zend_Form</classname> pour configurer le formulaire et effectuer le
-        rendu :</para>
+        <para>
+            Nous allons utiliser la puissance de <classname>Zend_Form</classname> pour
+            configurer le formulaire et effectuer le rendu&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 $form = new Zend_Form();
@@ -389,7 +480,7 @@ $form->addElement($username)
      ->addElement('submit', 'login', array('label' => 'Login'));
 ]]></programlisting>
 
-        <para>Il nous faut à présent un contrôleur pour gérer tout cela:</para>
+        <para>Il nous faut à présent un contrôleur pour gérer tout cela&#160;:</para>
 
         <programlisting role="php"><![CDATA[
 class UserController extends Zend_Controller_Action
@@ -425,26 +516,34 @@ class UserController extends Zend_Controller_Action
 }
 ]]></programlisting>
 
-        <para>Le script de vue pour afficher le formulaire :</para>
+        <para>Le script de vue pour afficher le formulaire&#160;:</para>
 
         <programlisting role="php"><![CDATA[
 <h2>Identifiez vous:</h2>
-<?= $this->form ?>
+<?php echo $this->form ?>
 ]]></programlisting>
 
-        <para>Comme vous le voyez sur le code du contrôleur, il reste du travail à faire une fois le formulaire validé.
-        Par exemple, utiliser <classname>Zend_Auth</classname> pour déclencher un processus d'identification.</para>
+        <para>
+            Comme vous le voyez sur le code du contrôleur, il reste du travail à faire une
+            fois le formulaire validé. Par exemple, utiliser <classname>Zend_Auth</classname> pour
+            déclencher un processus d'identification.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.quickstart.config">
         <title>Utiliser un objet <classname>Zend_Config</classname></title>
 
-        <para>Toutes les classes du composant <classname>Zend_Form</classname> sont configurables au moyen d'un objet
-        <classname>Zend_Config</classname> ; vous pouvez passer un objet <classname>Zend_Config</classname> au constructeur ou via la
-        méthode <code>setConfig()</code>. Voyons comment créer le formulaire ci-dessus, au moyen d'un fichier INI. Tout
-        d'abord, nous nous baserons sur une section "developement", et nos instructions devront être imbriquées afin de
-        refléter la configuration. Ensuite nous utiliserons un espace de nom "user" correspondant au contrôleur, puis un
-        "login" concernant le formulaire (ceci permet de ranger les données correctement dans le fichier INI) :</para>
+        <para>
+            Toutes les classes du composant <classname>Zend_Form</classname> sont
+            configurables au moyen d'un objet <classname>Zend_Config</classname> ; vous pouvez
+            passer un objet <classname>Zend_Config</classname> au constructeur ou via la méthode
+            <code>setConfig()</code>. Voyons comment créer le formulaire ci-dessus, au moyen d'un
+            fichier INI. Tout d'abord, nous nous baserons sur une section "developement", et nos
+            instructions devront être imbriquées afin de refléter la configuration. Ensuite nous
+            utiliserons un espace de nom "user" correspondant au contrôleur, puis un "login"
+            concernant le formulaire (ceci permet de ranger les données correctement dans le fichier
+            INI)&#160;:
+        </para>
 
         <programlisting role="ini"><![CDATA[
 [development]
@@ -473,7 +572,7 @@ user.login.elements.password.options.required = true
 user.login.elements.submit.type = "submit"
 ]]></programlisting>
 
-        <para>Le constructeur du formulaire ressemblera alors à ceci :</para>
+        <para>Le constructeur du formulaire ressemblera alors à ceci&#160;:</para>
 
         <programlisting role="php"><![CDATA[
 $config = new Zend_Config_Ini($configFile, 'development');
@@ -486,10 +585,10 @@ $form   = new Zend_Form($config->user->login);
     <sect2 id="zend.form.quickstart.conclusion">
         <title>Conclusion</title>
 
-        <para>Vous êtes maintenant capable de libérer la puissance de <classname>Zend_Form</classname>. Continuez de lire les
-        chapitres suivants pour utiliser ce composant en profondeur !</para>
+        <para>
+            Vous êtes maintenant capable de libérer la puissance de
+            <classname>Zend_Form</classname>. Continuez de lire les chapitres suivants pour utiliser
+            ce composant en profondeur&#160;!
+        </para>
     </sect2>
-</sect1>
-<!--
-vim:se ts=4 sw=4 et:
--->
+</sect1>

+ 277 - 159
documentation/manual/fr/module_specs/Zend_Form-StandardDecorators.xml

@@ -1,21 +1,26 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 13910 -->
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- EN-Revision: 15156 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.standardDecorators">
     <title>Décorateurs standards fournis avec Zend Framework</title>
 
-    <para><classname>Zend_Form</classname> est livré avec plusieurs décorateurs standards. Pour plus d'informations sur
-    l'utilisation des décorateurs en général, voyez <link linkend="zend.form.decorators">la section sur les
-    décorateurs</link>.</para>
+    <para>
+        <classname>Zend_Form</classname> est livré avec plusieurs décorateurs standards. Pour
+        plus d'informations sur l'utilisation des décorateurs en général, voyez <link
+        linkend="zend.form.decorators">la section sur les décorateurs</link>.
+    </para>
 
     <sect2 id="zend.form.standardDecorators.callback">
         <title><classname>Zend_Form_Decorator_Callback</classname></title>
 
-        <para>Le décorateur Callback peut exécuter une fonction de rappel pour rendre du contenu. Les fonctions doivent
-        être spécifiées grâce à l'option 'callback' passée à la configuration du décorateur, et peut être n'importe
-        quelle fonction PHP valide. Les fonctions peuvent accepter 3 arguments , <code>$content</code> ( le contenu
-        original passé au décorateur), <code>$element</code> (l'objet étant décoré), et un tableau d'options
-        <code>$options</code>. Voici un exemple :</para>
+        <para>
+            Le décorateur Callback peut exécuter une fonction de rappel pour rendre du
+            contenu. Les fonctions doivent être spécifiées grâce à l'option 'callback' passée à la
+            configuration du décorateur, et peut être n'importe quelle fonction PHP valide. Les
+            fonctions peuvent accepter 3 arguments , <code>$content</code> ( le contenu original
+            passé au décorateur), <code>$element</code> (l'objet étant décoré), et un tableau
+            d'options <code>$options</code>. Voici un exemple&#160;:
+        </para>
 
         <programlisting role="php"><![CDATA[
 class Util
@@ -27,53 +32,76 @@ class Util
 }
 ]]></programlisting>
 
-        <para>Cette fonction de rappel devrait être spécifiée avec <code>array('Util', 'label')</code>, et générera du
-        (mauvais) code HTML pour le label. Le décorateur Callback remplacera, fera suivre ou précéder le contenu
-        original avec la valeur qu'il retourne.</para>
-
-        <para>Le décorateur Callback accepte qu'on lui passe une valeur nulle pour l'option de placement, ce qui
-        remplacera le contenu original par le contenu décoré. 'prepend' et 'append' restent cependant acceptés.</para>
+        <para>
+            Cette fonction de rappel devrait être spécifiée avec <code>array('Util',
+            'label')</code>, et générera du (mauvais) code HTML pour le label. Le décorateur
+            Callback remplacera, fera suivre ou précéder le contenu original avec la valeur qu'il
+            retourne.
+        </para>
+
+        <para>
+            Le décorateur Callback accepte qu'on lui passe une valeur nulle pour l'option de
+            placement, ce qui remplacera le contenu original par le contenu décoré. 'prepend' et
+            'append' restent cependant acceptés.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.captcha">
         <title><classname>Zend_Form_Decorator_Captcha</classname></title>
 
-        <para>Le décorateur Captcha est à utiliser avec <link linkend="zend.form.standardElements.captcha">l'élément de
-        formulaire CAPTCHA </link>. Il utilise la méthode <code>render()</code> de l'adaptateur de CAPTCHA pour générer
-        son contenu.</para>
-
-        <para>Une variante du décorateur Captcha, 'Captcha_Word', est aussi utilisée quelques fois et créer 2 éléments,
-        un id et un input. L'id indique l'identifiant de session à comparer et l'input est pour la saisie du CAPTCHA.
-        Ces 2 éléments sont validés comme un seul.</para>
+        <para>
+            Le décorateur Captcha est à utiliser avec <link
+            linkend="zend.form.standardElements.captcha">l'élément de formulaire CAPTCHA</link>. Il
+            utilise la méthode <code>render()</code> de l'adaptateur de CAPTCHA pour générer son
+            contenu.
+        </para>
+
+        <para>
+            Une variante du décorateur Captcha, 'Captcha_Word', est aussi utilisée quelques
+            fois et créer 2 éléments, un id et un input. L'id indique l'identifiant de session à
+            comparer et l'input est pour la saisie du CAPTCHA. Ces 2 éléments sont validés comme un
+            seul.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.description">
         <title><classname>Zend_Form_Decorator_Description</classname></title>
 
-        <para>Le décorateur Description peut être utilisé pour afficher la description affectée à un
-        <classname>Zend_Form</classname>, <classname>Zend_Form_Element</classname>, ou <classname>Zend_Form_DisplayGroup</classname>; il cherche cette
-        description en utilisant <code>getDescription()</code> sur l'objet en question.</para>
-
-        <para>Par défaut, si aucune description n'est présente, rien ne sera généré. Dans le cas contraire , la
-        description est entourée d'un tag HTML <code>p</code> par défaut, même si vous pouvez passer le tag que vous
-        voulez en utilisant l'option <code>tag</code> à la création du décorateur, ou en utilisant sa méthode
-        <code>setTag()</code>. Vous pouvez aussi spécifier une classe pour le tag en renseignant l'option
-        <code>class</code> ou en appelant <code>setClass()</code>.</para>
-
-        <para>La description est échappée en utilisant le mécanisme de l'objet de vue par défaut. Vous pouvez désactiver
-        cette fonctionnalité en passant <code>false</code> à l'option 'escape' du décorateur ou via sa méthode
-        <code>setEscape()</code>.</para>
+        <para>
+            Le décorateur Description peut être utilisé pour afficher la description affectée
+            à un <classname>Zend_Form</classname>, <classname>Zend_Form_Element</classname>, ou
+            <classname>Zend_Form_DisplayGroup</classname>; il cherche cette description en utilisant
+            <code>getDescription()</code> sur l'objet en question.
+        </para>
+
+        <para>
+            Par défaut, si aucune description n'est présente, rien ne sera généré. Dans le cas
+            contraire , la description est entourée d'un tag HTML <code>p</code> par défaut, même si
+            vous pouvez passer le tag que vous voulez en utilisant l'option <code>tag</code> à la
+            création du décorateur, ou en utilisant sa méthode <code>setTag()</code>. Vous pouvez
+            aussi spécifier une classe pour le tag en renseignant l'option <code>class</code> ou en
+            appelant <code>setClass()</code>.
+        </para>
+
+        <para>
+            La description est échappée en utilisant le mécanisme de l'objet de vue par
+            défaut. Vous pouvez désactiver cette fonctionnalité en passant <code>false</code> à
+            l'option 'escape' du décorateur ou via sa méthode <code>setEscape()</code>.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.dtDdWrapper">
         <title><classname>Zend_Form_Decorator_DtDdWrapper</classname></title>
 
-        <para>Les décorateurs par défaut utilisent des listes de définition (<code>&lt;dl&gt;</code>) pour rendre les
-        éléments de formulaire. Comme les éléments d'un formulaire peuvent apparaître dans n'importe quel ordre, les
-        groupe d'affichage et les sous-formulaires peuvent être encapsulés dedans. Afin de garder ces types d'éléments
-        dans la liste de définition, DtDdWrapper crée une nouvelle définition vide (<code>&lt;dt&gt;</code>) et
-        encapsule don contenu dans une nouvelle donnée de définition (<code>&lt;dd&gt;</code>). L'affichage ressemble
-        alors à ceci :</para>
+        <para>
+            Les décorateurs par défaut utilisent des listes de définition
+            (<code>&lt;dl&gt;</code>) pour rendre les éléments de formulaire. Comme les éléments
+            d'un formulaire peuvent apparaître dans n'importe quel ordre, les groupe d'affichage et
+            les sous-formulaires peuvent être encapsulés dedans. Afin de garder ces types d'éléments
+            dans la liste de définition, DtDdWrapper crée une nouvelle définition vide
+            (<code>&lt;dt&gt;</code>) et encapsule don contenu dans une nouvelle donnée de
+            définition (<code>&lt;dd&gt;</code>). L'affichage ressemble alors à ceci&#160;:
+        </para>
 
         <programlisting role="html"><![CDATA[
 <dt></dt>
@@ -83,16 +111,20 @@ class Util
 </fieldset></dd>
 ]]></programlisting>
 
-        <para>Ce décorateur remplace le contenu qu'on lui fournit par ce même contenu entouré de
-        <code>&lt;dd&gt;</code>.</para>
+        <para>
+            Ce décorateur remplace le contenu qu'on lui fournit par ce même contenu entouré de
+            <code>&lt;dd&gt;</code>.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.errors">
         <title><classname>Zend_Form_Decorator_Errors</classname></title>
 
-        <para>Les erreurs des éléments possèdent leur propre décorateur : 'Errors'. Celui-ci utilise l'aide de vue
-        FormErrors, qui rend les messages d'erreur dans une liste non ordonnée (<code>&lt;ul&gt;</code>) qui reçoit la
-        classe d'affichage "errors".</para>
+        <para>
+            Les erreurs des éléments possèdent leur propre décorateur : 'Errors'. Celui-ci
+            utilise l'aide de vue FormErrors, qui rend les messages d'erreur dans une liste non
+            ordonnée (<code>&lt;ul&gt;</code>) qui reçoit la classe d'affichage "errors".
+        </para>
 
         <para>Le décorateur 'Errors' peut faire suivre ou précéder son contenu.</para>
     </sect2>
@@ -100,44 +132,58 @@ class Util
     <sect2 id="zend.form.standardDecorators.fieldset">
         <title><classname>Zend_Form_Decorator_Fieldset</classname></title>
 
-        <para>Les groupes d'affichage et les sous-formulaires rendent leur contenu dans des balises HTML fieldsets par
-        défaut. Le décorateur Fieldset vérifie une option 'legend' ou la méthode <code>getLegend()</code> dans
-        l'élément, et l'utilise comme élément de légende si non vide. Tout contenu qu'on lui passe est entouré d'une
-        balise HTML "fieldset", et remplace donc le contenu précédent. Tout attribut passé à l'élément décoré sera rendu
-        comme attribut de la balise HTML fieldset.</para>
+        <para>
+            Les groupes d'affichage et les sous-formulaires rendent leur contenu dans des
+            balises HTML fieldsets par défaut. Le décorateur Fieldset vérifie une option 'legend' ou
+            la méthode <code>getLegend()</code> dans l'élément, et l'utilise comme élément de
+            légende si non vide. Tout contenu qu'on lui passe est entouré d'une balise HTML
+            "fieldset", et remplace donc le contenu précédent. Tout attribut passé à l'élément
+            décoré sera rendu comme attribut de la balise HTML fieldset.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.file">
         <title><classname>Zend_Form_Decorator_File</classname></title>
 
-        <para>Les éléments de type "File" (upload de fichiers) ont une notation spéciale lorsque vous utilisez de
-        multiples éléments file ou des sous-formulaires. Le décorateur File est utilisé par
-        <classname>Zend_Form_Element_File</classname> et autorise plusieurs éléments avec un seul appel de méthode. Il est utilisé
-        automatiquement et gère alors le nom de chaque élément.</para>
+        <para>
+            Les éléments de type "File" (upload de fichiers) ont une notation spéciale lorsque
+            vous utilisez de multiples éléments file ou des sous-formulaires. Le décorateur File est
+            utilisé par <classname>Zend_Form_Element_File</classname> et autorise plusieurs éléments
+            avec un seul appel de méthode. Il est utilisé automatiquement et gère alors le nom de
+            chaque élément.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.form">
         <title><classname>Zend_Form_Decorator_Form</classname></title>
 
-        <para>Les objets <classname>Zend_Form</classname> ont en général besoin de rendre une balise HTML "form". Le décorateur
-        Form utilise l'aide de vue du même nom dans ce but. Il encapsule le contenu qu'on lui passe dans une balise HTML
-        'form' et remplace donc ce contenu par le nouveau entouré. Les action, méthode et attributs de l'objet
-        <classname>Zend_Form</classname> sont bien entendus utilisés dans la balise.</para>
+        <para>
+            Les objets <classname>Zend_Form</classname> ont en général besoin de rendre une
+            balise HTML "form". Le décorateur Form utilise l'aide de vue du même nom dans ce but. Il
+            encapsule le contenu qu'on lui passe dans une balise HTML 'form' et remplace donc ce
+            contenu par le nouveau entouré. Les action, méthode et attributs de l'objet
+            <classname>Zend_Form</classname> sont bien entendus utilisés dans la balise.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.formElements">
         <title><classname>Zend_Form_Decorator_FormElements</classname></title>
 
-        <para>Les formulaires, groupes d'affichage et sous-formulaires sont des collections d'éléments. Afin de rendre
-        ces éléments, ils utilisent le décorateur FormElements, qui itère sur tous les éléments et appelle leur méthode
-        <code>render()</code> en les joignant avec le séparateur. Il peut faire suivre ou précéder son contenu.</para>
+        <para>
+            Les formulaires, groupes d'affichage et sous-formulaires sont des collections
+            d'éléments. Afin de rendre ces éléments, ils utilisent le décorateur FormElements, qui
+            itère sur tous les éléments et appelle leur méthode <code>render()</code> en les
+            joignant avec le séparateur. Il peut faire suivre ou précéder son contenu.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.formErrors">
         <title><classname>Zend_Form_Decorator_FormErrors</classname></title>
 
-        <para>Certains développeurs ou designers préfèrent regrouper tous les messages d'erreur en haut du formulaire.
-        Le décorateur FormErrors a été conçu dans ce but.</para>
+        <para>
+            Certains développeurs ou designers préfèrent regrouper tous les messages d'erreur
+            en haut du formulaire. Le décorateur FormErrors a été conçu dans ce but.
+        </para>
 
         <para>Par défaut, la liste d'erreurs générée ressemble à ceci :</para>
 
@@ -158,42 +204,60 @@ class Util
 </ul>
 ]]></programlisting>
 
-        <para>Vous pouvez lui passer un tas d'options afin de la configurer plus finement:</para>
+        <para>
+            Vous pouvez lui passer un tas d'options afin de la configurer plus
+            finement&#160;:
+        </para>
 
         <itemizedlist>
             <listitem>
-                <para><code>ignoreSubForms</code>: ignore ou pas la récursion dans les sous-formulaires. Par défaut :
-                <code>false</code> (autorise la récursion).</para>
+                <para>
+                    <code>ignoreSubForms</code>&#160;: ignore ou pas la récursion dans les
+                    sous-formulaires. Par défaut&#160;: <code>false</code> (autorise la
+                    récursion).
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>markupElementLabelEnd</code>: Balise à ajouter après le label des éléments. Par défaut:
-                '&lt;/b&gt;'</para>
+                <para>
+                    <code>markupElementLabelEnd</code>&#160;: balise à ajouter après le label des
+                    éléments. Par défaut: '&lt;/b&gt;'
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>markupElementLabelStart</code>: Balise à ajouter avant le label des éléments. Par défaut:
-                '&lt;b&gt;'</para>
+                <para>
+                    <code>markupElementLabelStart</code>&#160;: balise à ajouter avant le label des
+                    éléments. Par défaut: '&lt;b&gt;'
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>markupListEnd</code>: Balise à ajouter après la liste des messages d'erreur. Par défaut:
-                '&lt;/ul&gt;'.</para>
+                <para>
+                    <code>markupListEnd</code>&#160;: balise à ajouter après la liste des messages
+                    d'erreur. Par défaut: '&lt;/ul&gt;'.
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>markupListItemEnd</code>: Balise à ajouter après chaque message d'erreur. Par défaut:
-                '&lt;/li&gt;'</para>
+                <para>
+                    <code>markupListItemEnd</code>&#160;: balise à ajouter après chaque message
+                    d'erreur. Par défaut: '&lt;/li&gt;'
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>markupListItemStart</code>: Balise à ajouter avant chaque message d'erreur. Par défaut:
-                '&lt;li&gt;'</para>
+                <para>
+                    <code>markupListItemStart</code>&#160;: balise à ajouter avant chaque message
+                    d'erreur. Par défaut: '&lt;li&gt;'
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>markupListStart</code>: Balise à ajouter autour de la liste des messages d'erreur. Par
-                défaut: '&lt;ul class="form-errors"&gt;'</para>
+                <para>
+                    <code>markupListStart</code>&#160;: balise à ajouter autour de la liste des
+                    messages d'erreur. Par défaut: '&lt;ul class="form-errors"&gt;'
+                </para>
             </listitem>
         </itemizedlist>
 
@@ -203,78 +267,116 @@ class Util
     <sect2 id="zend.form.standardDecorators.htmlTag">
         <title><classname>Zend_Form_Decorator_HtmlTag</classname></title>
 
-        <para>Le décorateur HtmlTag vous permet d'utiliser une balise HTML pour décorer votre contenu. La balise
-        utilisée est passée comme option 'tag' et toute autre option sera utilisée comme attribut HTML à cette balise.
-        Par défaut, le contenu généré remplace le contenu reçu par le décorateur. Vous pouvez tout de même préciser un
-        placement 'append' ou 'prepend'.</para>
+        <para>
+            Le décorateur HtmlTag vous permet d'utiliser une balise HTML pour décorer votre
+            contenu. La balise utilisée est passée comme option 'tag' et toute autre option sera
+            utilisée comme attribut HTML à cette balise. Par défaut, le contenu généré remplace le
+            contenu reçu par le décorateur. Vous pouvez tout de même préciser un placement 'append'
+            ou 'prepend'.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.image">
         <title><classname>Zend_Form_Decorator_Image</classname></title>
 
-        <para>Le décorateur Image vous permet de créer un tag HTML d'image (<code>&lt;input type="image" ...
-        /&gt;</code>), et optionnellement le rendre à l'intérieur d'une autre balise HTML.</para>
-
-        <para>Par défaut, le décorateur utilise la propriété 'src' , qui peut être renseignée grâce à la méthode
-        <code>setImage()</code> (avec la source de l'image). Aussi, le label de l'élément va être utilisé comme
-        propriété 'alt' de la balise et le propriété <code>imageValue</code> (manipulée grâce à
-        <code>setImageValue()</code> et <code>getImageValue()</code>) sera utilisée comme valeur.</para>
-
-        <para>Pour spécifier une balise HTML à utiliser avec l'élément, passez l'option 'tag' au décorateur, ou utilisez
-        sa méthode <code>setTag()</code>.</para>
+        <para>
+            Le décorateur Image vous permet de créer un tag HTML d'image (<code>&lt;input
+            type="image" ... /&gt;</code>), et optionnellement le rendre à l'intérieur d'une autre
+            balise HTML.
+        </para>
+
+        <para>
+            Par défaut, le décorateur utilise la propriété 'src' , qui peut être renseignée
+            grâce à la méthode <code>setImage()</code> (avec la source de l'image). Aussi, le label
+            de l'élément va être utilisé comme propriété 'alt' de la balise et le propriété
+            <code>imageValue</code> (manipulée grâce à <code>setImageValue()</code> et
+            <code>getImageValue()</code>) sera utilisée comme valeur.
+        </para>
+
+        <para>
+            Pour spécifier une balise HTML à utiliser avec l'élément, passez l'option 'tag' au
+            décorateur, ou utilisez sa méthode <code>setTag()</code>.
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.label">
         <title><classname>Zend_Form_Decorator_Label</classname></title>
 
-        <para>Les éléments de formulaire possèdent en général un label, et le décorateur du même nom permet de le
-        rendre. Il utilise l'aide de vue FormLabel en récupérant le label de l'élément avec <code>getLabel()</code>. Si
-        aucun label n'est présent, rien n'est rendu. Par défaut, les label sont traduits lorsqu'un objet de traduction
-        existe.</para>
-
-        <para>Vous pouvez aussi spécifier optionnellement une option 'tag'. Si celle-ci est précisée, alors le label
-        sera encapsulé dans la balise HTML en question. Si la balise est présente mais qu'il n'y a pas de label, alors
-        la balise est rendu seule. Vous pouvez utiliser aussi une classe CSS grâce à l'option 'class' ou la méthode
-        <code>setClass()</code>.</para>
-
-        <para>Aussi, vous pouvez utiliser les préfixes ou des suffixes à afficher pour l'élément, selon si celui-ci est
-        requis ou pas. Par exemple on peut imaginer que tout label est suivi du caractère ":". Aussi, tout élément
-        requis à la saisie pourrait comporter une étoile "*". Des méthodes existent pour effectuer cela :</para>
+        <para>
+            Les éléments de formulaire possèdent en général un label, et le décorateur du même
+            nom permet de le rendre. Il utilise l'aide de vue FormLabel en récupérant le label de
+            l'élément avec <code>getLabel()</code>. Si aucun label n'est présent, rien n'est rendu.
+            Par défaut, les label sont traduits lorsqu'un objet de traduction existe.
+        </para>
+
+        <para>
+            Vous pouvez aussi spécifier optionnellement une option 'tag'. Si celle-ci est
+            précisée, alors le label sera encapsulé dans la balise HTML en question. Si la balise
+            est présente mais qu'il n'y a pas de label, alors la balise est rendu seule. Vous pouvez
+            utiliser aussi une classe CSS grâce à l'option 'class' ou la méthode
+            <code>setClass()</code>.
+        </para>
+
+        <para>
+            Aussi, vous pouvez utiliser les préfixes ou des suffixes à afficher pour
+            l'élément, selon si celui-ci est requis ou pas. Par exemple on peut imaginer que tout
+            label est suivi du caractère ":". Aussi, tout élément requis à la saisie pourrait
+            comporter une étoile "*". Des méthodes existent pour effectuer cela :
+        </para>
 
         <itemizedlist>
             <listitem>
-                <para><code>optionalPrefix</code>: affecte le texte à préfixer au label si l'élément est optionnel.
-                <code>setOptionalPrefix()</code> et <code>getOptionalPrefix()</code> existent aussi.</para>
+                <para>
+                    <code>optionalPrefix</code>: affecte le texte à préfixer au label si
+                    l'élément est optionnel. <code>setOptionalPrefix()</code> et
+                    <code>getOptionalPrefix()</code> existent aussi.
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>optionalSuffix</code>: affecte le texte à suffixer au label si l'élément est optionnel.
-                <code>setOptionalSuffix()</code> et <code>getOptionalSuffix()</code> existent aussi.</para>
+                <para>
+                    <code>optionalSuffix</code>: affecte le texte à suffixer au label si
+                    l'élément est optionnel. <code>setOptionalSuffix()</code> et
+                    <code>getOptionalSuffix()</code> existent aussi.
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>requiredPrefix</code>: affecte le texte à préfixer au label si l'élément est marqué comme
-                requis.<code>setRequiredPrefix()</code> et <code>getRequiredPrefix()</code> existent aussi.</para>
+                <para>
+                    <code>requiredPrefix</code>: affecte le texte à préfixer au label si
+                    l'élément est marqué comme requis.<code>setRequiredPrefix()</code> et
+                    <code>getRequiredPrefix()</code> existent aussi.
+                </para>
             </listitem>
 
             <listitem>
-                <para><code>requiredSuffix</code>: affecte le texte à suffixer au label si l'élément est marqué comme
-                requis.<code>setRequiredSuffix()</code> et <code>getRequiredSuffix()</code> existent aussi.</para>
+                <para>
+                    <code>requiredSuffix</code>: affecte le texte à suffixer au label si
+                    l'élément est marqué comme requis.<code>setRequiredSuffix()</code> et
+                    <code>getRequiredSuffix()</code> existent aussi.
+                </para>
             </listitem>
         </itemizedlist>
 
-        <para>Par défaut, le décorateur Label préfixe son rendu vis à vis du contenu qu'on lui passe à décorer. L'option
-        'placement' reste disponible avec comme autre valeur possible 'append'</para>
+        <para>
+            Par défaut, le décorateur Label préfixe son rendu vis à vis du contenu qu'on lui
+            passe à décorer. L'option 'placement' reste disponible avec comme autre valeur possible
+            'append'
+        </para>
     </sect2>
 
     <sect2 id="zend.form.standardDecorators.prepareElements">
         <title><classname>Zend_Form_Decorator_PrepareElements</classname></title>
 
-        <para>Les formulaires, les groupes d'affichage et les sous-formulaires sont des collections d'éléments. Lors de
-        l'utilisation du décorateur <link linkend="zend.form.standardDecorators.viewScript">ViewScript</link> dans vos
-        formulaires, il peut être utile de récursivement passer l'objet de vue, le traducteur et tous les noms réels
-        (notation tableau des sous-formulaires) aux éléments. Cette tache peut être effectuée grâce au décorateur
-        'PrepareElements'. En général, vous le marquerez en tant que premier décorateur de la pile.</para>
+        <para>
+            Les formulaires, les groupes d'affichage et les sous-formulaires sont des
+            collections d'éléments. Lors de l'utilisation du décorateur <link
+            linkend="zend.form.standardDecorators.viewScript">ViewScript</link> dans vos
+            formulaires, il peut être utile de récursivement passer l'objet de vue, le traducteur et
+            tous les noms réels (notation tableau des sous-formulaires) aux éléments. Cette tache
+            peut être effectuée grâce au décorateur 'PrepareElements'. En général, vous le marquerez
+            en tant que premier décorateur de la pile.
+        </para>
 
         <programlisting role="php"><![CDATA[
 $form->setDecorators(array(
@@ -287,14 +389,20 @@ $form->setDecorators(array(
     <sect2 id="zend.form.standardDecorators.viewHelper">
         <title><classname>Zend_Form_Decorator_ViewHelper</classname></title>
 
-        <para>Beaucoup d'éléments utilisent les aides de <classname>Zend_View</classname> pour leur propre rendu, et ceci est
-        effectué grâce au décorateur ViewHelper. Avec lui, vous pouvez spécifier une option 'helper' pour lui indiquer
-        explicitement l'aide de vue à utiliser. Si aucune ne lui est fournie, il utilise le nom de la classe de
-        l'élément (moins le chemin : la dernière partie du nom de la classe) afin de déterminer l'aide de vue à
-        utiliser. Par exemple, 'Zend_Form_Element_Text' cherchera l'aide de vue 'form' + 'Text' soit 'formText'.</para>
-
-        <para>Tout attributs ajoutés à l'élément sera passé à l'aide vue comme attribut de l'élément HTML
-        résultant.</para>
+        <para>
+            Beaucoup d'éléments utilisent les aides de <classname>Zend_View</classname> pour
+            leur propre rendu, et ceci est effectué grâce au décorateur ViewHelper. Avec lui, vous
+            pouvez spécifier une option 'helper' pour lui indiquer explicitement l'aide de vue à
+            utiliser. Si aucune ne lui est fournie, il utilise le nom de la classe de l'élément
+            (moins le chemin : la dernière partie du nom de la classe) afin de déterminer l'aide de
+            vue à utiliser. Par exemple, 'Zend_Form_Element_Text' cherchera l'aide de vue 'form' +
+            'Text' soit 'formText'.
+        </para>
+
+        <para>
+            Tout attributs ajoutés à l'élément sera passé à l'aide vue comme attribut de
+            l'élément HTML résultant.
+        </para>
 
         <para>Par défaut, ce décorateur fait suivre son contenu au contenu qu'on lui passe.</para>
     </sect2>
@@ -302,35 +410,43 @@ $form->setDecorators(array(
     <sect2 id="zend.form.standardDecorators.viewScript">
         <title><classname>Zend_Form_Decorator_ViewScript</classname></title>
 
-        <para>Quelques fois, vous pouvez avoir besoin d'un script de vue pour afficher vos éléments. Ceci vous permettra
-        un placement très fin et détaillé, ou alors de changer la vue utilisée en fonction du module MVC dans lequel
-        vous vous situez, par exemple.</para>
+        <para>
+            Quelques fois, vous pouvez avoir besoin d'un script de vue pour afficher vos
+            éléments. Ceci vous permettra un placement très fin et détaillé, ou alors de changer la
+            vue utilisée en fonction du module MVC dans lequel vous vous situez, par exemple.
+        </para>
 
-        <para>Le décorateur ViewScript nécessite une option 'viewScript'. Celle-ci peut aussi être passée à l'élément
-        lui-même, via sa propriété 'viewScript'. Le décorateur rend alors ce script de vue comme un script partiel (ce
-        qui signifie que chaque appel à lui possède son propre espace de variables). Plusieurs variables sont alors
-        peuplées dans le script de vue:</para>
+        <para>
+            Le décorateur ViewScript nécessite une option 'viewScript'. Celle-ci peut aussi
+            être passée à l'élément lui-même, via sa propriété 'viewScript'. Le décorateur rend
+            alors ce script de vue comme un script partiel (ce qui signifie que chaque appel à lui
+            possède son propre espace de variables). Plusieurs variables sont alors peuplées dans le
+            script de vue&#160;:
+        </para>
 
         <itemizedlist>
             <listitem>
-                <para><code>element</code>: L'élément décoré</para>
+                <para><code>element</code>&#160;: l'élément décoré</para>
             </listitem>
 
             <listitem>
-                <para><code>content</code>: Le contenu passé au décorateur</para>
+                <para><code>content</code>&#160;: le contenu passé au décorateur</para>
             </listitem>
 
             <listitem>
-                <para><code>decorator</code>: l'objet décorateur lui-même</para>
+                <para><code>decorator</code>&#160;: l'objet décorateur lui-même</para>
             </listitem>
 
             <listitem>
-                <para>Aussi, toute variable passée au décorateur via <code>setOptions()</code> et qui n'est pas utilisée
-                en interne (qui n'est pas 'placement', 'separator', etc.) est alors passée comme variable de vue.</para>
+                <para>
+                    Aussi, toute variable passée au décorateur via <code>setOptions()</code>
+                    et qui n'est pas utilisée en interne (qui n'est pas 'placement', 'separator',
+                    etc.) est alors passée comme variable de vue.
+                </para>
             </listitem>
         </itemizedlist>
 
-        <para>Voici un exemple :</para>
+        <para>Voici un exemple&#160;:</para>
 
         <programlisting role="php"><![CDATA[
 // Affectation d'un décorateur ViewScript à un seul élément
@@ -350,23 +466,26 @@ $element->setDecorators(array(array('ViewScript',
 
         <programlisting role="php"><![CDATA[
 <div class="<?= $this->class ?>">
-    <?= $this->formLabel($this->element->getName(),
-                         $this->element->getLabel()) ?>
-    <?= $this->{$this->element->helper}(
-        $this->element->getName(),
-        $this->element->getValue(),
-        $this->element->getAttribs()
+    <?php echo $this->formLabel($this->element->getName(),
+                                $this->element->getLabel()) ?>
+    <?php echo $this->{$this->element->helper}(
+                       $this->element->getName(),
+                       $this->element->getValue(),
+                       $this->element->getAttribs()
     ) ?>
-    <?= $this->formErrors($this->element->getMessages()) ?>
-    <div class="hint"><?= $this->element->getDescription() ?></div>
+    <?php echo $this->formErrors($this->element->getMessages()) ?>
+    <div class="hint"><?php echo $this->element->getDescription() ?></div>
 </div>
 ]]></programlisting>
 
         <note>
             <title>Remplacer le contenu avec un script de vue</title>
 
-            <para>Le contenu n'est pas remplacé par défaut, vous pouvez le demander en spécifiant l'option 'placement'
-            du décorateur. Il existe plusieurs manières de faire :</para>
+            <para>
+                Le contenu n'est pas remplacé par défaut, vous pouvez le demander en
+                spécifiant l'option 'placement' du décorateur. Il existe plusieurs manières de
+                faire&#160;:
+            </para>
 
             <programlisting role="php"><![CDATA[
 // A la création du décorateur:
@@ -383,10 +502,9 @@ $this->decorator->setOption('placement', false);
 ]]></programlisting>
         </note>
 
-        <para>L'utilisation du décorateur ViewScript est recommandée dans les cas où vous souhaitez avoir un placement
-        HTML très détaillé et très fin de vos éléments.</para>
+        <para>
+            L'utilisation du décorateur ViewScript est recommandée dans les cas où vous
+            souhaitez avoir un placement HTML très détaillé et très fin de vos éléments.
+        </para>
     </sect2>
-</sect1>
-<!--
-vim:se ts=4 sw=4 tw=80 et:
--->
+</sect1>