Les champs de formulaires en erreurs sont générés par la méthode generateWithError de la classe Widget. Or cette méthode possède un argument $blnSwitchOrder dont la valeur par défaut est false, ce qui donne comme ordre le message puis le champ :
Code : Tout sélectionner
system/librairies/Widget.php :
/**
* Class Widget
*
* Provide methods to handle form widgets.
* @copyright Leo Feyer 2005-2010
* @author Leo Feyer <http://www.contao.org>
* @package Controller
*/
abstract class Widget extends Controller
{
...
/**
* Generate the widget with error message and return it as string
* @param boolean
* @return string
*/
public function generateWithError($blnSwitchOrder=false)
{
$strWidget = $this->generate();
$strError = $this->getErrorAsHTML();
return $blnSwitchOrder ? $strWidget . $strError : $strError . $strWidget;
}
...
}
Pour inverser cette ordre pour tous les champs il suffit de "modifier" (création d'un fichier form_widget.tpl dans le dossier des templates personnalisés) le template form_widget.tlp (version 2.9.5) correspondant en ajout l'argument true pour avoir le champ puis le message :
Code : Tout sélectionner
form_widget.tlp :
<?php if (!$this->tableless): ?>
<tr class="<?php echo $this->rowClass; ?>">
<td class="col_0 col_first"><?php echo $this->generateLabel(); ?></td>
<td class="col_1 col_last"><?php echo $this->generateWithError(true); ?></td>
</tr>
<?php else: ?>
<?php echo $this->generateLabel(); ?>
<?php echo $this->generateWithError(true); ?><br />
<?php endif; ?>
Contaoment
F2lt