Traduction composant QuickForm

Faire des formulaires avec Joomla est relativement simple une fois que l’on à choisit son composant.
Chez EticWeb nous utilisons le composant Quickform car il est relativement
simple mais surtout puissant.
Nous avons réaliser avec ce composant une application intranet de gestion de note de frais par exemple.
Cependant l’inconvénient de ce composant c’est son manque d’évolution, bien que nous ayons proposé nos services à son développeur nous n’avons eu aucune réponse à nos mails à ce jour.

Cela étend et comme nous apprécions ce composant nous l’avons de nouveau utilisé pour un site mulit langue avec le composant Joomfish pour gérer les traductions.

Heureusement comme Quickform est codé en respectant l’api Joomla il est relativement facile de traduire ces formulaires voir même les listes de résultat.
Pour ce faire il suffit d’ajouter 3 fichiers XML (que je vous propose de télécharger à la fin de cet article dans un fichier zip, en attendant que ROUSSEL Jean-Christophe « le créateur du composant » ne les propose en téléchargement sur le site officiel) dans le dossier « administrator/components/com_joomfish/contentelements » de votre installation Joomla.


Fichier
quickform.xml

[sourcecode language= »xml »]
<?xml version="1.0" ?>
<joomfish type="contentelement">
<name>Quickform</name>
<author>S. GAUDEMER EticWeb</author>
<version>1.0</version>
<description>Definition for the core QuickForm component</description>
<reference type="quickform">
<table name="quickform">
<field type="referenceid" name="id" translate="0">ID</field>
<field type="titletext" name="Name" translate="1">Name</field>
<field type="text" name="published" translate="0">Published</field>
<field type="text" name="Access" translate="0">Access</field>
<field type="text" name="StartDate" translate="0">StartDate</field>
<field type="text" name="EndDate" translate="0">EndDate</field>
<field type="textarea" name="Description" translate="1">Description</field>
<field type="text" name="Categories" translate="0">Categories</field>
<field type="text" name="Redirect" translate="0">Redirect</field>
<field type="textarea" name="Thanks" translate="1">Thanks</field>
<field type="text" name="UserFrom" translate="1">UserFrom</field>
<field type="text" name="UserFromname" translate="1">UserFromname</field>
<field type="text" name="UserEmail" translate="1">UserEmail</field>
<field type="text" name="UserMode" translate="0">UserMode</field>
<field type="textarea" name="UserText" translate="1">UserText</field>
<field type="text" name="UserObject" translate="1">UserObject</field>
<field type="text" name="UserSend" translate="0">UserSend</field>
<field type="text" name="UserAttachement" translate="0">UserAttachement</field>
<field type="text" name="AdminFrom" translate="0">AdminFrom</field>
<field type="text" name="AdminFromname" translate="1">AdminFromname</field>
<field type="text" name="AdminEmail" translate="0">AdminEmail</field>
<field type="text" name="AdminMode" translate="0">AdminMode</field>
<field type="textarea" name="AdminText" translate="1">AdminText</field>
<field type="text" name="AdminObject" translate="1">AdminObject</field>
<field type="text" name="AdminSend" translate="0">AdminSend</field>
<field type="text" name="AdminAttachement" translate="0">AdminAttachement</field>
<field type="textarea" name="ScriptBefore" translate="1">ScriptBefore</field>
<field type="textarea" name="ScriptJavascript" translate="1">ScriptJavascript</field>
<field type="textarea" name="ScriptMiddle" translate="1">ScriptMiddle</field>
<field type="textarea" name="ScriptAfter" translate="1">ScriptAfter</field>
<field type="text" name="Layout" translate="0">Layout</field>
<field type="text" name="Table" translate="0">Table</field>
<field type="text" name="Etat" translate="0">Etat</field>
<field type="text" name="Redirect_auto" translate="0">Redirect_auto</field>
<field type="text" name="Article" translate="0">Article</field>
<field type="text" name="LimitText" translate="0">LimitText</field>
<field type="checked_out_by" name="checked_out" translate="0">Check out by</field>
<field type="checked_out_date" name="checked_out_time" translate="0">Check out date</field>
<field type="text" name="catid" translate="0">Catid</field>
</table>
</reference>
</joomfish>
[/sourcecode]

Fichier
quickform_fields.xml

[sourcecode language= »xml »]<?xml version="1.0" ?>
<joomfish type="contentelement">
<name>Quickform champs des formulaire</name>
<author>S. GAUDEMER EticWeb</author>
<version>1.0</version>
<description>Definition for the Fields Form created with QuickForm component</description>
<reference type="quickform_fields">
<table name="quickform_fields">
<field type="referenceid" name="id" translate="0">ID</field>
<field type="title" name="Forms" translate="0">Forms</field>
<field type="text" name="Type" translate="0">Type</field>
<field type="text" name="Line" translate="0">Line</field>
<field type="text" name="Name" translate="0">Name</field>
<field type="titletext" name="Label" translate="1">Label</field>
<field type="textarea" name="Description" translate="0">Description</field>
<field type="text" name="Required" translate="0">Required</field>
<field type="text" name="Format" translate="0">Format</field>
<field type="text" name="FormatMini" translate="0">FormatMini</field>
<field type="text" name="Size" translate="0">Size</field>
<field type="text" name="Validation" translate="0">Validation</field>
<field type="textarea" name="Error" translate="1">Error</field>
<field type="text" name="Custom" translate="0">Custom</field>
<field type="textarea" name="Value" translate="1">Value</field>
<field type="text" name="Database" translate="0">Database</field>
<field type="text" name="Key" translate="0">Key</field>
<field type="text" name="Dependant" translate="0">Dependant</field>
<field type="text" name="Field" translate="0">Field</field>
<field type="text" name="Request" translate="0">Request</field>
<field type="text" name="Access" translate="0">Access</field>
<field type="text" name="ordering" translate="0">Ordering</field>
<field type="text" name="published" translate="0">Published</field>
<field type="text" name="sqltype" translate="0">Sqltype</field>
<field type="text" name="sqlparams" translate="0">Sqlparams</field>
</table>
</reference>
</joomfish>
[/sourcecode]

Fichier
quickform_show.xml

[sourcecode language= »xml »]<?xml version="1.0" ?>
<joomfish type="contentelement">
<name>Quickform résultat des formulaire</name>
<author>S. GAUDEMER EticWeb</author>
<version>1.0</version>
<description>Definition for Form results created with QuickForm component</description>
<reference type="quickform_show">
<table name="quickform_show">
<field type="referenceid" name="id" translate="0">ID</field>
<field type="titletext" name="Name" translate="1">Name</field>
<field type="textarea" name="Description" translate="1">Description</field>
<field type="text" name="Access" translate="0">Access</field>
<field type="text" name="Categories" translate="0">Categories</field>
<field type="text" name="Config" translate="0">Config</field>
<field type="text" name="Forms" translate="0">Forms</field>
<field type="text" name="Column" translate="0">Column</field>
<field type="textarea" name="Colname" translate="1">Colname</field>
<field type="text" name="Colwidth" translate="0">Colwidth</field>
<field type="text" name="Rowlimit" translate="0">Rowlimit</field>
<field type="textarea" name="Details" translate="1">Details</field>
<field type="text" name="Expcolumn" translate="0">Expcolumn</field>
<field type="text" name="Expcolname" translate="1">Expcolname</field>
<field type="textarea" name="See" translate="0">See</field>
<field type="text" name="Request" translate="0">Request</field>
<field type="text" name="published" translate="0">Published</field>
<field type="textarea" name="Plugins" translate="0">Plugins</field>
<field type="text" name="left" translate="0">left</field>
<field type="text" name="right" translate="0">right</field>
<field type="text" name="top" translate="0">top</field>
<field type="text" name="bottom" translate="0">bottom</field>
<field type="text" name="headers" translate="0">headers</field>
<field type="text" name="footers" translate="0">footers</field>
<field type="text" name="imagescale" translate="0">imagescale</field>
<field type="text" name="units" translate="0">units</field>
<field type="text" name="orientation" translate="0">orientation</field>
<field type="text" name="codeheader" translate="0">codeheader</field>
<field type="text" name="codecontent" translate="0">codecontent</field>
<field type="text" name="codefooter" translate="0">codefooter</field>
</table>
</reference>
</joomfish>
[/sourcecode]

Pour télécharger les trois
fichier zipper c’est ici
Ce fichier vous permettra
d’activer la traduction pour le composant Quickform en utilisant
l’administration de Joomla. Installation via
Composants->Joomfish->Content elements .

Installation fichier XML pour traduction Quickform

Installation fichier XML pour traduction Quickform