<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Communauté Francophone des Utilisateurs de Xoops</title>
    <link>http://www.frxoops.org/</link>
    <description>Support Officiel</description>
    <lastBuildDate>Sun, 05 Feb 2012 05:58:01 +0200</lastBuildDate>
    <docs>http://backend.userland.com/rss/</docs>
    <generator>XOOPS</generator>
    <category>News</category>
    <managingEditor>contact at frxoops dot org</managingEditor>
    <webMaster>contact at frxoops dot org</webMaster>
    <language>fr</language>
        <image>
      <title>Communauté Francophone des Utilisateurs de Xoops</title>
      <url>http://www.frxoops.org/images/logo.png</url>
      <link>http://www.frxoops.org/</link>
      <width>100</width>
      <height>34</height>
    </image>
            <item>
      <title>Deux extensions &amp;quot;Xoops&amp;quot; pour Google Chrome et Chromium</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1886</link>
      <description>Vous faites peut-être parti des millions d&#039;utilisateurs qui ont abandonné Firefox pour Google Chrome, et vous souhaitez retrouver vos extensions favorites dans celui-ci.&lt;/p&gt;&lt;p&gt;Le &lt;a rel=&quot;external&quot; href=&quot;http://labs.xoofoo.org&quot; title=&quot;Le Laboratoire XooFoo&quot;&gt;Laboratoire XooFoo.org&lt;/a&gt;, dans le cadre de ses actions de promotion du système de gestion de contenu Web &quot;XOOPS&quot;, vient de créer deux extensions pour Google Chrome, l&#039;une est similaire à la &lt;a rel=&quot;external&quot; href=&quot;http://labs.xoofoo.org/modules/news/article.php?storyid=388&quot; title=&quot;Lire le dernier article sur l&#039;extension XooFooBar pour Firefox&quot;&gt;XooFooBar&lt;/a&gt; conçu pour Firefox, avec des liens vers les principaux sites de supports pour Xoops, les pages et groupes sur &lt;a rel=&quot;external&quot; href=&quot;http://www.facebook.com/pages/Xoops-France/109178774820&quot; title=&quot;Fan&#039;s Page Facebook FrXoops - Web Social&quot;&gt;Facebook&lt;/a&gt;, sur &lt;a rel=&quot;external&quot; href=&quot;http://twitter.com/frxoops&quot; title=&quot;FrXoops - suivez nous sur Twitter&quot;&gt;Twitter&lt;/a&gt;,  de partenaires, ainsi que les liens pertinents vers des sites d&#039;Outils ou d&#039;Astuces, .... ; la seconde vous permettra d&#039;effectuer facilement des recherches sur les principaux sites de support Xoops, et principalement : &lt;a rel=&quot;external&quot; href=&quot;http://www.frxoops.org&quot; title=&quot;Site Xoops de la communauté francophone&quot;&gt;FrXoops.org&lt;/a&gt;, &lt;a rel=&quot;external&quot; href=&quot;http://labs.xoofoo.org&quot; title=&quot;Home Site XooFoo.org&quot;&gt;Labs.XooFoo.org&lt;/a&gt;, &lt;a rel=&quot;external&quot; href=&quot;http://tv.xoofoo.org&quot; title=&quot;Les tutoriels vidéo pour Xoops, Html, Css, Php, Javascript et Zend Framework&quot;&gt;TV.XooFoo.org&lt;/a&gt;, &lt;a rel=&quot;external&quot; href=&quot;http://www.xoops.org&quot; title=&quot;Site Officiel du projet XOOPS&quot;&gt;Xoops Project&lt;/a&gt; et &lt;a rel=&quot;external&quot; href=&quot;http://www.xuups.com&quot; title=&quot;Home Site Xuups.com&quot;&gt;Xuups.com&lt;/a&gt;.</description>
      <pubDate>Thu, 19 Jan 2012 18:56:16 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1886</guid>
    </item>
        <item>
      <title>Héritage de la class xoopsForm</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1885</link>
      <description>&lt;h1&gt;Héritage de la class xoopsForm&lt;/h1&gt;&lt;h2&gt;Qu&#039;est ce que l&#039;héritage ?&lt;/h2&gt;&lt;p&gt;L&#039;héritage  est un principe propre à la programmation orientée objet (POO), permettant de créer une nouvelle classe à partir d&#039;une classe existante. La nouvelle classe &quot;hérite&quot; des propriétés et méthodes de la classe dont elle hérite, appelée classe &quot;mère&quot;. La classe qui hérite est appelée classe &quot;fille&quot;.&lt;/p&gt;&lt;p&gt;Cette définition est très succincte vous pouvez compléter vos connaissances en programmation orienté objet sur le web, un petit lien concernant l&#039;héritage : &lt;a href=&quot;http://wind.developpez.com/tutoriels/windev/windev-poo-heritage/&quot; title=&quot;http://wind.developpez.com/tutoriels/windev/windev-poo-heritage/&quot; rel=&quot;external&quot;&gt;http://wind.developpez.com/tutoriels/windev/windev-poo-heritage/&lt;/a&gt;&lt;/p&gt;&lt;h2&gt;Xoops et l&#039;héritage&lt;/h2&gt;&lt;p&gt;Comme tout bon projet informatique, xoops utilise la POO. En effet ses développeurs (que je remercie au passage) ont écrit un ensemble de classes qui régissent ce projet.&lt;br /&gt;Donc nous pouvons utiliser l&#039;héritage pour ajouter, modifier le comportement de  XOOPS.&lt;/p&gt;&lt;h3&gt;Tout ça, c&#039;est très bien, mais pourquoi faire ?&lt;/h3&gt;&lt;ul id=&quot;&quot;&gt;&lt;li class=&quot;&quot;&gt;on peut modifier n&#039;importe quelles classes directement dans le projet.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Ces modifications sont appelées des &quot;&lt;span class=&quot;bold italic&quot;&gt;HACKs&lt;/span&gt;&quot;.&lt;/p&gt;&lt;p&gt;C&#039;est  a ce moment précis, que vous introduisez dans votre code le grain de sable qui risque de vous miner la vie, pour l&#039;évolution et la maintenance de votre site.&lt;br /&gt;- Que vas t&#039;il se passer à la prochaine mise à jour ? Dans 1 an.......&lt;br /&gt;Plus rien ne vas fonctionner correctement, il va falloir recommencer toutes les modifica-tions une par une; Comme vous êtes un développeur compétent vous avez pris soin de consigner dans un fichier ou sur un &quot;&lt;span class=&quot;italic&quot;&gt;petit  cahier&lt;/span&gt;&quot; toutes les modifications à faire.&lt;/p&gt;&lt;p&gt;Dans le cas contraire : je vous souhaite bon courage !&lt;/p&gt;&lt;h3&gt;L&#039;autre solution c&#039;est  d&#039;utiliser  l&#039;héritage, allons y !&lt;/h3&gt;&lt;p&gt;Prenons un exemple avec un formulaire dans XOOPS.&lt;br /&gt;Les formulaires dans XOOPS, bien que souvent suffisants, ne peuvent pas répondent à l&#039;ensemble de vos besoins spécifiques.&lt;/p&gt;&lt;p&gt;Nous allons ici, voir 2 applications de l&#039;héritage avec XOOPS et plus précisément avec les  éléments xoopsThemeForm et xoopsElement , ce n&#039;est que des exemples et absolument pas restrictif.&lt;/p&gt;&lt;ul class=&quot;&quot;&gt;&lt;li class=&quot;&quot;&gt;changer l&#039;url de action du formulaire à la volé&lt;/li&gt;&lt;li class=&quot;&quot;&gt;ajouter un nouvel élément, pas disponible dans le projet initial&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Nous partons du principe, que nous avons un module appelé myModule et que ce module tout à fait standard contient un répertoire class dans lequel nous allons pouvoir placer nos nouvelles classes.&lt;/p&gt;&lt;h4&gt;La première chose, c&#039;est comprendre comment sont hiérarchisées les classes qui génèrent le formulaire.&lt;/h4&gt;&lt;p&gt;La classe XoopsForm est la classe de base du formulaire, c&#039;est une classe abstraite, ce qui signifie que cette classe ne doit pas être utilisée directement mais qu&#039;elle doit être étendue, généralisée. C&#039;est en faite une sorte de gabarit, des propriétés et des méthodes.&lt;br /&gt;Je vous laisse vous plonger dans la POO pour plus de détail.&lt;/p&gt;&lt;p&gt;La classe XoopsThemeForm est la classe qui généralise XoopSForm et qui vas afficher le formulaire sous forme de table, c&#039;est cette classe dont nous hériterons, pour modifier le comportement général du formulaire.&lt;/p&gt;&lt;div class=&quot;txtcenter&quot;&gt;&lt;img src=&quot;http://www.frxoops.org/uploads/news/xoopsform_01.gif&quot; alt=&quot;xoopsform&quot;/&gt;&lt;/div&gt;&lt;p&gt;&lt;span class=&quot;bold red&quot;&gt;Note :&lt;/span&gt; si nous voulons que notre formulaire ne s’affiche plus sous forme de tableau, alors il nous suffirait de partir directement de XoopsForm et refaire le travail à notre sauce; Pour ça, s&#039;en se prendre la tête, il suffit de partir de xoopsThemeForm et de modifié la méthode render() qui est responsable de l&#039;affichage.&lt;/p&gt;&lt;p&gt;Comme vous l&#039;aurez remarqué, dans XoopsForm (voir API) la méthode render() est vide, et oui ! C&#039;est ça une classe abstraite; Elle nous dit juste que cette méthode doit être redé-finie dans la classe qui l&#039;étend.&lt;/p&gt;&lt;p&gt;Donc dans XoopsThemeForm la méthode est redéfinie pour affiché un formulaire sous forme de table :&lt;/p&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;function&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;render&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele_name&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getName&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;form&amp;nbsp;name=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele_name&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;id=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele_name&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;action=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;method=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getMethod&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;onsubmit=&quot;return&amp;nbsp;xoopsFormValidate_&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele_name&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;();&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getExtra&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;table&amp;nbsp;width=&quot;100%&quot;&amp;nbsp;class=&quot;outer&quot;&amp;nbsp;cellspacing=&quot;1&quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;tr&amp;gt;&amp;lt;th&amp;nbsp;colspan=&quot;2&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getTitle&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$hidden&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;even&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach&amp;nbsp;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getElements&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;as&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(!&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;is_object&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;))&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;else&amp;nbsp;if&amp;nbsp;(!&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;isHidden&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(!&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getNocolspan&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;tr&amp;nbsp;valign=&quot;top&quot;&amp;nbsp;align=&quot;left&quot;&amp;gt;&amp;lt;td&amp;nbsp;class=&quot;head&quot;&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;((&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getCaption&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;!=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;div&amp;nbsp;class=&quot;xoops-form-element-caption&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;isRequired&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;?&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;-required&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;span&amp;nbsp;class=&quot;caption-text&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/span&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;span&amp;nbsp;class=&quot;caption-marker&quot;&amp;gt;*&amp;lt;/span&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/div&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;((&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$desc&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getDescription&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;!=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;div&amp;nbsp;class=&quot;xoops-form-element-help&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$desc&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/div&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/td&amp;gt;&amp;lt;td&amp;nbsp;class=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;render&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;NWLINE&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;else&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;tr&amp;nbsp;valign=&quot;top&quot;&amp;nbsp;align=&quot;left&quot;&amp;gt;&amp;lt;td&amp;nbsp;class=&quot;head&quot;&amp;nbsp;colspan=&quot;2&quot;&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;((&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getCaption&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;!=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;div&amp;nbsp;class=&quot;xoops-form-element-caption&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;isRequired&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;?&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;-required&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;span&amp;nbsp;class=&quot;caption-text&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/span&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;span&amp;nbsp;class=&quot;caption-marker&quot;&amp;gt;*&amp;lt;/span&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/div&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;nbsp;valign=&quot;top&quot;&amp;nbsp;align=&quot;left&quot;&amp;gt;&amp;lt;td&amp;nbsp;class=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;cols-pan=&quot;2&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;render&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;else&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$hidden&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;render&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/table&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;NWLINE&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;nbsp;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$hidden&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/form&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;NWLINE&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;renderValidationJS&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;true&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;h4&gt;Mise en pratique&lt;/h4&gt;&lt;p&gt;Dans notre premier exemple nous souhaitons envoyer notre formulaire à un traitement différent en fonction d&#039;une action utilisateur.&lt;/p&gt;&lt;p&gt;Notre formulaire est le suivant :&lt;/p&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: #FF8000&quot;&gt;//&amp;nbsp;Création&amp;nbsp;de&amp;nbsp;l&#039;objet&amp;nbsp;formulaire&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$my_form&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;ThemeForm&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;mon&amp;nbsp;formulaire&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;Form_bien&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;han-dle_bien.php?action=save&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #FF8000&quot;&gt;//&amp;nbsp;Création&amp;nbsp;des&amp;nbsp;éléments&amp;nbsp;de&amp;nbsp;formulaire&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$reference&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsFormText&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;Référence&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;reference&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;50&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;100&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$prix&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsFormText&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;Prix&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;prix&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;50&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;100&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #FF8000&quot;&gt;//&amp;nbsp;Ajout&amp;nbsp;des&amp;nbsp;éléments&amp;nbsp;au&amp;nbsp;formulaire&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$my_form&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;addElement&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$reference&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;true&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$my_form&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;addElement&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$prix&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;true&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #FF8000&quot;&gt;//&amp;nbsp;Idem&amp;nbsp;pour&amp;nbsp;un&amp;nbsp;bouton&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$button&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsFormButton&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;post&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;_SEND&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;submit&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$my_form&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;addElement&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$button&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #FF8000&quot;&gt;//&amp;nbsp;Affichage&amp;nbsp;du&amp;nbsp;formulaire&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$my_form&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;display&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;p&gt;Jusqu&#039;ici rien de bien sorcier ! Nous allons donc modifier le comportement de XoopsThemeForm pour cela,nous créons un fichier php dans le répertoire class, que nous nommons de manière très original : my_form.php&lt;/p&gt;&lt;p&gt;Nous obtenons maintenant la séquence d’héritage suivante :&lt;/p&gt;&lt;div class=&quot;txtcenter&quot;&gt;&lt;img src=&quot;http://www.frxoops.org/uploads/news/xoopsform_02.gif&quot; alt=&quot;xoopsform&quot;/&gt;&lt;/div&gt;&lt;p&gt;Pour que cette classe hérite de XoopsThemeForm, on dit aussi pour qu&#039;elle étend, ou en-core qu&#039;elle généralise, on écrit en php :&lt;/p&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;MyForm&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;extends&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsThemeForm&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;{&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;p&gt;Bien sûr pour que cela fonctionne, il faut que la classe &quot;fille&quot; trouve sa classe &quot;mère&quot;, donc il faut inclure la classe XoopsThemeForm ce qui donne :&lt;/p&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;include_once(./../&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsThemeForm&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;php&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&lt;br /&gt;&lt;br /&gt;class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;MyForm&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;extends&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsThemeForm&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;{&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;p&gt;Vous pouvez aussi utiliser xoops_load de la manière suivante :&lt;/p&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;defined&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;XOOPS_ROOT_PATH&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;or&amp;nbsp;die(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;Restricted&amp;nbsp;access&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;xoops_load&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;XoopsThemeForm&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;MyForm&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;extends&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsThemeForm&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;{}&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;p&gt;Ensuite on peut soit ajouter de nouvelles propriétés ou de nouvelles méthodes ou bien redéfinir des méthodes existantes, on dit dans ce cas &quot;&lt;span class=&quot;bold italic&quot;&gt;Que l&#039;on surcharge (override) la méthode&lt;/span&gt;&quot;.&lt;/p&gt;&lt;p&gt;Nous allons ajouter à notre formulaire  une nouvelle méthode, actuellement la classe XoopsThemeForm ne permet pas de changer le paramètre action du formulaire après avoir déclaré le constructeur, ce paramètre est passé au constructeur une fois pour toute; Mais  on veut le modifier en fonction des actions utilisateurs et diriger le formulaire vers des traitement différents.&lt;/p&gt;&lt;p&gt;Nous allons donc ajouter une méthode :&lt;/p&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php&lt;br /&gt;xoops_load&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;XoopsThemeForm&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;MyForm&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;extends&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsThemeForm&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$newAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;function&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;setNewAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$url&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$url&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;===&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;?&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;newAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;():&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;newAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$action&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;p&gt;Cette nouvelle méthode (appelé aussi &quot;setter&quot;) affecte l&#039;url a la nouvelle propriété $newAc-tion si le paramètre de la fonction est passé.&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;bold red&quot;&gt;Note importante :&lt;/span&gt;&lt;br /&gt;La classe xoopsForm, n&#039;a pas était optimisée pour être généralisée de manière a donner a ux  développeurs la possibilité de faire ce qu&#039;ils veulent, à mon grand regret. Pour cela il aurait fallu que les propriétés de la classe xoopsForm soit &quot;&lt;span class=&quot;italic&quot;&gt;protected&lt;/span&gt;&quot; et non &quot;&lt;span class=&quot;italic&quot;&gt;private&lt;/span&gt;&quot; (je vous renvois à la POO) ou alors que : chaque propriété soit associée à un &quot;&lt;span class=&quot;italic&quot;&gt;setter&lt;/span&gt;&quot; et à un &quot;&lt;span class=&quot;italic&quot;&gt;getter&lt;/span&gt;&quot;. j&#039;ignore les raisons de cette absence.&lt;br /&gt;Ceci vas nous obliger a redéfinir la fonction render(). Ceux qui n&#039;aurait pas été obligatoire si nous avions eu des &quot;setter&quot; ou que les propriétés eût étées &quot;protected&quot;&lt;/p&gt;&lt;p&gt;La classe avec la fonction render() redéfinie, on remplace $this-&gt;getAction par notre nouvelle propriété $newAction, ce qui donne :&lt;/p&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php&lt;br /&gt;xoops_load&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;XoopsThemeForm&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;MyForm&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;extends&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsThemeForm&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;{&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$newAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;public&amp;nbsp;function&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;setNewAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$url&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$url&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;===&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;null&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;?&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;newAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;():&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;newAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$action&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;render&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele_name&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getName&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;form&amp;nbsp;name=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele_name&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;id=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele_name&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;action=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;newAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;method=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getMethod&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;onsubmit=&quot;return&amp;nbsp;xoopsFormValidate_&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele_name&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;();&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getExtra&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;table&amp;nbsp;width=&quot;100%&quot;&amp;nbsp;class=&quot;outer&quot;&amp;nbsp;cellspacing=&quot;1&quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;tr&amp;gt;&amp;lt;th&amp;nbsp;colspan=&quot;2&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getTitle&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$hidden&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;even&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foreach&amp;nbsp;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getElements&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;as&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(!&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;is_object&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;))&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;else&amp;nbsp;if&amp;nbsp;(!&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;isHidden&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(!&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getNocolspan&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;tr&amp;nbsp;valign=&quot;top&quot;&amp;nbsp;align=&quot;left&quot;&amp;gt;&amp;lt;td&amp;nbsp;class=&quot;head&quot;&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;((&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getCaption&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;!=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;div&amp;nbsp;class=&quot;xoops-form-element-caption&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;isRequired&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;?&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;-required&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;span&amp;nbsp;class=&quot;caption-text&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/span&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;span&amp;nbsp;class=&quot;caption-marker&quot;&amp;gt;*&amp;lt;/span&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/div&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;((&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$desc&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getDescription&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;!=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;div&amp;nbsp;class=&quot;xoops-form-element-help&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$desc&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/div&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/td&amp;gt;&amp;lt;td&amp;nbsp;class=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;render&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;NWLINE&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;else&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;tr&amp;nbsp;valign=&quot;top&quot;&amp;nbsp;align=&quot;left&quot;&amp;gt;&amp;lt;td&amp;nbsp;class=&quot;head&quot;&amp;nbsp;colspan=&quot;2&quot;&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;((&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getCaption&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())&amp;nbsp;!=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;div&amp;nbsp;class=&quot;xoops-form-element-caption&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;isRequired&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;?&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;-required&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;span&amp;nbsp;class=&quot;caption-text&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/span&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;span&amp;nbsp;class=&quot;caption-marker&quot;&amp;gt;*&amp;lt;/span&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/div&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;tr&amp;nbsp;valign=&quot;top&quot;&amp;nbsp;align=&quot;left&quot;&amp;gt;&amp;lt;td&amp;nbsp;class=&quot;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&quot;&amp;nbsp;cols-pan=&quot;2&quot;&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;render&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&amp;nbsp;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;else&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$hidden&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ele&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;render&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/table&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;NWLINE&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;nbsp;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$hidden&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;/form&amp;gt;&#039;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;NWLINE&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;renderValidationJS&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;true&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$ret&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;p&gt;Maintenant nous pouvons l&#039;utiliser de la manière suivante :&lt;/p&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;$my_form&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;MyForm&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;paramètres&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;If(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;condition&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;){&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #FF8000&quot;&gt;//&amp;nbsp;maintenant&amp;nbsp;on&amp;nbsp;change&amp;nbsp;l&#039;url&amp;nbsp;du&amp;nbsp;formulaire&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$MyForm&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;setNewAction&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;test.php&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&lt;br /&gt;}&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;Vous pouvez faire une mise à jour s&#039;en risque......&lt;/p&gt;&lt;p&gt;Deuxième exemple on souhaite ajouter un élément qui n&#039;existe pas dans les classes de XOOPS, par exemple on veut que notre formulaire affiche des images précédemment téléchargées sur le serveur, pour informer l&#039;utilisateur.&lt;/p&gt;&lt;p&gt;Il n&#039;y a pas d&#039;élément, affiche image, dans les formulaires de XOOPS. Nous allons donc le créer en étendant la classe XoopsFormElement, qui est la classe chargée de créer un élément de formulaire, comme formcolorpicker etc....&lt;/p&gt;&lt;br /&gt;&lt;p&gt;ce qui donne comme héritage :&lt;/p&gt;&lt;div class=&quot;txtcenter&quot;&gt;&lt;img src=&quot;http://www.frxoops.org/uploads/news/xoopsform_03.gif&quot; alt=&quot;xoopsform&quot;/&gt;&lt;/div&gt;&lt;p&gt;classe :&lt;/p&gt;&lt;br /&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;defined&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;XOOPS_ROOT_PATH&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;or&amp;nbsp;die(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;Restricted&amp;nbsp;access&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&lt;br /&gt;class&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;MyElement&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;extends&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;XoopsFormElement&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$_content&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;__construct&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$value&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$name&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;setCaption&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$caption&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;setName&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$name&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;_value&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$value&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;setContent&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$content&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;_content&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$content&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getContent&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$encode&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;false&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$encode&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;?&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;htmlspecialchars&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;_content&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;ENT_QUOTES&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;nbsp;:&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;_content&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;function&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;render&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$this&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;getContent&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;p&gt;La méthode fonction setContent($content) vas nous permettre d’insérer du contenu.&lt;/p&gt;&lt;ul id=&quot;&quot;&gt;&lt;li class=&quot;&quot;&gt;Utilisation :&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;$planchePhoto&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;myElement&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$planchePhoto&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;setContent&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;div&amp;nbsp;class=&quot;photos&quot;&amp;gt;vos&amp;nbsp;photos&amp;lt;/div&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;p&gt;Maintenant que nous avons créer un nouvel élément de formulaire , ajoutons le à notre formulaire&lt;/p&gt;&lt;div class=&quot;xoopsCode&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;$my_form&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;addElement&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$planchePhoto&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;&lt;p&gt;Voilà nous avons ajouté un élément à notre formulaire&lt;/p&gt;</description>
      <pubDate>Wed, 18 Jan 2012 23:30:00 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1885</guid>
    </item>
        <item>
      <title>TDMmoney 1.1</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1884</link>
      <description>L&#039;équipe de FreeXoopServices est heureuse de vous annoncer la sortie de TDMmoney 1.1.&lt;/p&gt;&lt;h2&gt;Liste des bugs corrigés :&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Bug avec les redirections (Mage)&lt;/li&gt;&lt;li&gt;Il était impossible de modifier une opération dans l&#039;administration (Mage)&lt;/li&gt;&lt;li&gt;Les caractères UTF-8 ne s&#039;affichaient pas correctement dans le PDF (Mage).&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;Liste des améliorations:&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;La partie administration à été recodée (compatible à 100% avec xoops 2.5) (Mage)&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;Informations&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Voir le fichier &quot;lang_diff.txt&quot; pour les changements de langues..&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;Installation:&lt;/h2&gt;&lt;ol&gt;&lt;li&gt;Vous devez effacer le dossier &quot;TDMMoney qui se trouve dans &quot;modules&quot;.&lt;/li&gt;&lt;li&gt;Uploader le dossier &quot;TDMMoney&quot; sur votre serveur dans le dossier &quot;modules&quot;&lt;/li&gt;&lt;li&gt;Faire une mise à jour du module.&lt;/li&gt;&lt;/ol&gt;&lt;h2&gt;Important&lt;/h2&gt;&lt;p&gt;Le module nécessite l&#039;utilisation du Frameworks &quot;ModuleClasses&quot; pour fonctionner.&lt;br /&gt;Le module travail uniquement sur xoops 2.5x&lt;/p&gt;&lt;h2&gt;Téléchargement&lt;/h2&gt;&lt;p&gt;&lt;a href=&quot;https://sourceforge.net/projects/freexoopservice/files/TDMMoney/Version/1.1/TDMMoney_1.1.zip/download&quot; title=&quot;&quot; class=&quot;&quot; rel=&quot;external&quot;&gt;TDMmoney 1.1&lt;/a&gt; et sa traduction &lt;a href=&quot;https://sourceforge.net/projects/freexoopservice/files/TDMMoney/Translation/1.1/Translation_french_TDMMoney_1.1.zip/download&quot; title=&quot;Télécharger le module TDMmoney&quot; class=&quot;&quot; rel=&quot;external&quot;&gt;française&lt;/a&gt;</description>
      <pubDate>Thu, 12 Jan 2012 20:42:28 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1884</guid>
    </item>
        <item>
      <title>APCal mis à jour à la version 2.0.3</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1883</link>
      <description>APCal version 2.0.3 est maintenant disponible sur &lt;a href=&quot;http://xoops.antiquepromotion.com/modules/TDMDownloads/singlefile.php?cid=1&amp;lid=1&quot; title=&quot;Télécharger APCal&quot;&gt;&lt;a href=&quot;http://xoops.antiquepromotion.com&quot; title=&quot;http://xoops.antiquepromotion.com&quot; rel=&quot;external&quot;&gt;http://xoops.antiquepromotion.com&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;La traduction espagnol est maintenant complète.&lt;/p&gt;&lt;p&gt;Nous avons également amélioré la boîte descriptive dans la vue mensuelle afin qu&#039;elle ne dépasse pas les limites de la fenêtre du navigateur.&lt;br /&gt;De plus, nous avons corrigé a petit bug lors de l&#039;insertion d&#039;un évènement.</description>
      <pubDate>Thu, 12 Jan 2012 20:36:00 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1883</guid>
    </item>
        <item>
      <title>Joyeuse Année 2012 !</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1882</link>
      <description>&lt;div class=&quot;txtcenter&quot;&gt;&lt;img src=&quot;http://www.frxoops.org/uploads/2012.gif&quot; alt=&quot;2012 - FrXoops&quot;/&gt;&lt;/div&gt;</description>
      <pubDate>Sat, 31 Dec 2011 13:06:21 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1882</guid>
    </item>
        <item>
      <title>Trois nouveaux thèmes gratuit pour Xoops</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1881</link>
      <description>&lt;a href=&quot;http://xoops-demo.com/&quot; title=&quot;&quot;&gt;Xoops Demo&lt;/a&gt; vous présente 3 nouveaux thèmes GRATUIT et adapté pour Xoops : XDGrey, XDClassified et XDBlack_wall.&lt;br /&gt;Ces thèmes se composent  de 3 colonnes et sont compatibles avec Internet explorer, Firefox, Safari, Chrome et Opera.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;XDGrey&lt;/strong&gt; est basé sur le thème défaut et du template &lt;a href=&quot;http://www.templatemo.com/preview/templatemo_162_gray_company&quot; title=&quot;&quot;&gt;templatemo_162_gray_company&lt;/a&gt;.&lt;/p&gt;&lt;div class=&quot;txtcenter&quot;&gt;&lt;img src=&quot;http://xoops-demo.com/uploads/templates/XDGrey.png&quot; alt=&quot;&quot;/&gt;&lt;/div&gt;&lt;p&gt;&lt;span class=&quot;bold&quot;&gt;Téléchargement :&lt;/span&gt; &lt;a href=&quot;http://sourceforge.net/projects/xdthemes/files/XDGrey.zip/download&quot; title=&quot;&quot;&gt;à cette adresse&lt;/a&gt; et en action : &lt;a href=&quot;http://xoops-demo.com/index.php?xoops_theme_select=XDGrey&quot; title=&quot;&quot;&gt;sur ce site&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;XDClassified&lt;/strong&gt; est basé sur le thème défaut et du template &lt;a href=&quot;http://www.websitetemplatesonline.com/free-template/Classified.html&quot; title=&quot;&quot;&gt;Classified&lt;/a&gt;&lt;/p&gt;&lt;div class=&quot;txtcenter&quot;&gt;&lt;img src=&quot;http://xoops-demo.com/uploads/templates/XDClassified.png&quot; alt=&quot;&quot;/&gt;&lt;/div&gt;&lt;p&gt;&lt;span class=&quot;bold&quot;&gt;Téléchargement :&lt;/span&gt; &lt;a href=&quot;http://sourceforge.net/projects/xdthemes/files/XDClassified.zip/download&quot; title=&quot;&quot;&gt;à cette adresse&lt;/a&gt; et en action : &lt;a href=&quot;http://xoops-demo.com/index.php?xoops_theme_select=XDClassified&quot; title=&quot;&quot;&gt;sur ce site&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;XDBlack_wall&lt;/strong&gt; est basé sur le thème défaut et du template &lt;a href=&quot;http://www.templatemo.com/preview/templatemo_335_black_wall&quot; title=&quot;&quot;&gt;templatemo_335_black_wall&lt;/a&gt;.&lt;/p&gt;&lt;div class=&quot;txtcenter&quot;&gt;&lt;img src=&quot;http://xoops-demo.com/uploads/templates/XDBlack_wall.png&quot; alt=&quot;&quot;/&gt;&lt;/div&gt;&lt;p&gt;&lt;span class=&quot;bold&quot;&gt;Téléchargement :&lt;/span&gt; &lt;a href=&quot;http://sourceforge.net/projects/xdthemes/files/XDBlack_wall.zip/download&quot; title=&quot;&quot;&gt;à cette adresse&lt;/a&gt;, et en action : &lt;a href=&quot;http://xoops-demo.com/index.php?xoops_theme_select=XDBlack_wall&quot; title=&quot;&quot;&gt;sur ce site&lt;/a&gt;.</description>
      <pubDate>Fri, 30 Dec 2011 11:19:18 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1881</guid>
    </item>
        <item>
      <title>XDTazer : Template GRATUIT pour Xoops</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1880</link>
      <description>&lt;p&gt;&lt;a href=&quot;http://xoops-demo.com/&quot; rel=&quot;external&quot;&gt;Xoops demo&lt;/a&gt; vous présente l&#039;adaptation d&#039;un nouveau thème pour Xoops nommé XDTazer&lt;/p&gt;&lt;p&gt;Voici un nouveau template Réalisé avec le gabarit default et le PSD de &lt;a href=&quot;http://www.freebiepixels.com/author/myjilson/&quot; rel=&quot;external&quot;&gt;myjilson&lt;/a&gt;.Il dispose de 2 colonnes (une à gauche ou a droite ).&lt;/p&gt;&lt;div class=&quot;txtcenter&quot;&gt;&lt;img src=&quot;http://xoops-demo.com/uploads/templates/XDTazer.png&quot;/&gt;&lt;/div&gt;&lt;p&gt;Vous pouvez utiliser ce thème avec xoops 2.4.5 et 2.5.x&lt;/p&gt;&lt;p&gt;Visible &lt;a href=&quot;http://xoops-demo.com/index.php?xoops_theme_select=XDTazer &quot;rel=&quot;external&quot;&gt;ici&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Téléchargeable &lt;a href=&quot;http://xoops-demo.com/modules/TDMDownloads/singlefile.php?cid=1&amp;lid=24 &quot;rel=&quot;external&quot;&gt;ici&lt;/a&gt;&lt;/p&gt;</description>
      <pubDate>Fri, 09 Dec 2011 01:14:04 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1880</guid>
    </item>
        <item>
      <title> APCal v2.0.2 Final - Calendrier avec carte pour XOOPS 2.4 / 2.5</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1879</link>
      <description>&lt;p&gt;APCal est un module vous permettant d&#039;afficher un calendrier d&#039;événements avec une carte sur votre site web. Plusieurs autres caractéristiques ont été ajoutés, optionnelles pour la plupart. Ce module est basé sur PiCal.&lt;/p&gt;&lt;p&gt;Ce module va copier vos données de PiCal pour une transition simple.&lt;/p&gt;&lt;p&gt;Cette version est un grand pas en avant depuis la version 1.&lt;/p&gt;&lt;p&gt;Visiter &lt;a rel=&quot;external&quot; href=&quot;http://xoops.antiquepromotion.com/modules/TDMDownloads/singlefile.php?cid=1&amp;lid=1&quot; title=&quot;http://xoops.antiquepromotion.com&quot;&gt;&lt;a href=&quot;http://xoops.antiquepromotion.com&quot; title=&quot;http://xoops.antiquepromotion.com&quot; rel=&quot;external&quot;&gt;http://xoops.antiquepromotion.com&lt;/a&gt;&lt;/a&gt; pour le télécharger !&lt;/p&gt;&lt;h4&gt;NOUVELLES CARACTÉRISTIQUES :&lt;/h4&gt;&lt;ul id=&quot;&quot;&gt;&lt;li class=&quot;&quot;&gt;Événements sur une ligne (au lieu de le répéter chaque jour) dans la vue mensuelle.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Images miniatures et visualisateur dans la vue événementielle.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Nouveaux champs pour le courriel et le site web.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Chaque catégorie possède une couleur.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Légende des catégories avec couleurs associées.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Couleurs par défaut plus neutre pour une meilleure intégration.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Réorganisation de l&#039;interface administrateur.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Bouton &quot;parlez-en à un ami&quot;.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Boutons de partage sur les principaux réseaux sociaux (Facebook, Twiter, Google+, LinkedIn, Delicious).&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Ajouter des photos à un événement avec une image principale.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Choisir une catégorie principale pour chaque événement.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Choisir des heures différentes pour chaque jour d&#039;un événement (s&#039;il est sur plusieurs jours).&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Veuillez reporter tout problèmes rapidement sur xoops.antiquepromotion.com ou ici.&lt;br /&gt;Nous allons essayer d&#039;avoir une version RC d&#039;ici une semaine.&lt;/p&gt;&lt;h4&gt;Caractéristiques originales :&lt;/h4&gt;&lt;ul id=&quot;&quot;&gt;&lt;li class=&quot;&quot;&gt;Marqueurs contenant la date de l&#039;événement sur la carte.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Optimisé pour Google (titre et description).&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Possibilité d&#039;ajouter une description en HTML pour chaque catégorie.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Amélioration de la personnalisation du thème.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Carte affichant tous les événements.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Carte affichant l&#039;emplacement de l&#039;événement spécifié.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Afficher le titre de la catégorie en H1.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : API qui permet à vos utilisateurs d&#039;afficher votre calendrier sur leur site (Avec un lien vers votre site).&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Menu de navigation permettant de naviguer à travers les événements.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Colonnes plus larges pour les jours spécifiés.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Calendrier perpétuel des fêtes nationales (Uniquement pour les États-Unis (EN), le Canada (EN), le Québec (FR) et la France (FR).&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Option : Réécriture d&#039;URL (si le serveur le permet).&lt;/li&gt;&lt;li class=&quot;&quot;&gt;4 vues différentes (Journalière, hebdomadaire, mensuelle et annuelle).&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Les utilisateurs peuvent ajouter des événements si les permissions le permettent.&lt;/li&gt;&lt;li class=&quot;&quot;&gt;Exportation et importation au format ICS.&lt;/li&gt;&lt;/ul&gt;</description>
      <pubDate>Fri, 09 Dec 2011 01:10:49 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1879</guid>
    </item>
        <item>
      <title>Un site de petites annonces pour les disques vinyles !</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1878</link>
      <description>&lt;p&gt;Bonjour,&lt;/p&gt;&lt;p&gt;Je vous présente ma toute dernière création réalisé sous Xoops. &lt;img class=&quot;imgsmile&quot; src=&quot;http://www.frxoops.org/uploads/smil4bb645df78dd6.gif&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;&lt;p&gt;Un site de petites annonces de Disques Vinyles.&lt;/p&gt;&lt;div class=&quot;txtcenter&quot;&gt;&lt;a href=&quot;http://www.disques-vinyles.fr&quot; title=&quot;Visitez Disques-Vinyles.fr&quot;&gt;&lt;img height=&quot;400&quot; src=&quot;http://www.disques-vinyles.fr/disques-vinyles.jpg&quot; alt=&quot;Disques vinyles&quot;/&gt;&lt;/a&gt;&lt;/div&gt;</description>
      <pubDate>Wed, 30 Nov 2011 23:03:26 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1878</guid>
    </item>
        <item>
      <title>Xoops 2.5.4 est publié en version finale</title>
      <link>http://www.frxoops.org/modules/news/article.php?storyid=1877</link>
      <description>&lt;link rel=&quot;stylesheet&quot; href=&quot;http://www.frxoops.org/themes/frxoops/WOX/wox.css&quot;/&gt;&lt;br /&gt;&lt;div id=&quot;xoops-release&quot;&gt;&lt;h1&gt;XOOPS 2.5.4 Final&lt;/h1&gt;&lt;p class=&quot;right italic x-small&quot;&gt;Article original par Mamba du 20/11/2011 sur &lt;a href=&quot;http://xoops.org/modules/news/article.php?storyid=6136&quot; title=&quot;Publication originale sur Xoops.org&quot; rel=&quot;external&quot;&gt;Xoops.org&lt;/a&gt; et librement adapté par l&#039;équipe FrXoops&lt;/p&gt;&lt;div class=&quot;chapter&quot;&gt;&lt;h2 class=&quot;editorial&quot;&gt;Nouveautés&lt;/h2&gt;&lt;p&gt;L&#039;équipe de développement XOOPS est heureuse d&#039;annoncer la sortie de XOOPS 2.5.4 Final.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Mise à jour de nos bibliothèques :&lt;ul&gt;&lt;li&gt;phpMailer 5.1&lt;/li&gt;&lt;li&gt;TinyMCE 3.4.6 &lt;span class=&quot;italic&quot;&gt;(nota: TinyMCE 3.4.7 dans la version française)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;jQuery 1.7.0&lt;/li&gt;&lt;li&gt;jQueryUI 1.8.16&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Mise à jour des modules livrés avec le noyau Xoops, qui recourent désormais au &lt;a href=&quot;http://xoops.org/modules/news/article.php?storyid=6037&quot; title=&quot;Framework Module Admin&quot; rel=&quot;external&quot;&gt;Framework Module Admin&lt;/a&gt; et disposent donc d&#039;une interface d&#039;administration standardisée :&lt;ul&gt;&lt;li&gt;Private Message&lt;/li&gt;&lt;li&gt;Profile&lt;/li&gt;&lt;li&gt;Protector&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;Bugs principaux corrigés (pour plus de détails, lisez le changelog) :&lt;blockquote&gt;- quoteConv causait des problèmes avec un nombre important de quotes (Roby73/trabis)&lt;br /&gt;- Cache bug. La clé n&#039;était générée correctement (andrey3761/trabis)&lt;br /&gt;- ID: 3425970 Inconnu : Function split() (cesag/trabis)&lt;br /&gt;- ID: 3424295 Index non défini : tplset (cesag/trabis)&lt;br /&gt;- Préférences n&#039;utilisait correctement le champ de description, tooltip n&#039;affichait pas le titre et la description sans espace (trabis)&lt;br /&gt;- Extra height in admin page when warnings are not displayed (timgno/trabis)&lt;br /&gt;- Files loaded with browse.php (*.js, *.css, etc) are not cached by the browser (trabis)&lt;br /&gt;- ID: 3421180 CBB 4.05 et Xoops 2.5.4 - erreur avec le with Framework (cesag/trabis)&lt;br /&gt;- Retrait de l&#039;appel à une feuille de style inexistante dans le menu d&#039;administration&lt;br /&gt;- ID: 3419812 glisser déposer et Xoops 2.5.3 (CESAG / Trabis)&lt;br /&gt;- Élément de formulaire Calendrier ne fonctionne pas correctement (Trabis)&lt;br /&gt;- Vérification /xoops_data accessible en écriture lors de l&#039;installation (Trabis)&lt;br /&gt;- ID: 3419332 Déconnexion bug (Cesag / Trabis)&lt;/blockquote&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;</description>
      <pubDate>Mon, 21 Nov 2011 00:34:36 +0200</pubDate>
      <guid>http://www.frxoops.org/modules/news/article.php?storyid=1877</guid>
    </item>
      </channel>
</rss>
