tomasi Posted January 21, 2014 Share Posted January 21, 2014 Bonjour, Mon objectif est de faire afficher un message d'alerte ou de succès lorsque des utilisateurs remplissent le formulaire de mon module. Par exemple faire afficher en rouge: " Vous devez entrer votre nom?" Merci par avance pour votre aide. Link to comment Share on other sites More sharing options...
Agostini Julien Posted January 21, 2014 Share Posted January 21, 2014 Le plus simple à mon avis serait d'utiliser "JQuery"... Link to comment Share on other sites More sharing options...
tomasi Posted January 21, 2014 Author Share Posted January 21, 2014 Quelle est la procédure à suivre? Est-il possible de faire afficher un message comme ceux affiché par prestashop pour la maintenance? vert pour succes et rouge pour warning Link to comment Share on other sites More sharing options...
Agostini Julien Posted January 21, 2014 Share Posted January 21, 2014 Bien sûr, avec JQuery beaucoup de choses sont possibles. Par exemple pour colorer le champ "input" en vert ou rouge si la saisie est bonne ou pas cela fonctionne comme cela : function controlMyInput() { //Récupération de la valeur du champ id ="myinput" nb=$('#myinput').val(); //Si ce n'est pas un nombre if (isNaN(nb)) { //background=rouge $('#myinput').css({'background-color' : '#FF0000'}); } //Sinon else { //background=vert $('#myinput').css({'background-color' : '#00FF00'}); } } Link to comment Share on other sites More sharing options...
Agostini Julien Posted January 21, 2014 Share Posted January 21, 2014 (edited) Par la suite des choses plus complexes et surtout plus jolie sont possibles, je te conseille de jeter un coup d’œil à la doc officielle ici : http://jquery.com/ Edited January 21, 2014 by AgostiniJulien (see edit history) Link to comment Share on other sites More sharing options...
tomasi Posted January 21, 2014 Author Share Posted January 21, 2014 Tout d'abord merci pour ta réponse. J'ai regardé dans les modules préinstallés de presta. Certains font afficher ces message avec la commande suivante: $this->_postErrors[] = $this->l('Address is required.'); Est-ce que tu connais cette méthode? Link to comment Share on other sites More sharing options...
Agostini Julien Posted January 21, 2014 Share Posted January 21, 2014 Oui cela ce passe cette fois-ci en "php". Pour ma part j'utilise plutôt cette function native de Prestashop qui permet d'afficher le message d'erreur par défaut : $this->displayError( $this->l('An unexpected error has occurred') ); ou $this->displayConfirmation($this->l('Settings updated')); Link to comment Share on other sites More sharing options...
Agostini Julien Posted January 21, 2014 Share Posted January 21, 2014 Si tu souhaites que l'erreur apparaisse à la validation du formulaire, je te conseille de le faire en "PHP". En revanche, si tu souhaites un contrôle en direct de ton formulaire c'est "JQuery". Link to comment Share on other sites More sharing options...
tomasi Posted January 21, 2014 Author Share Posted January 21, 2014 Oui cela se fait à la validation du formulaire. Voila la fonction que j'utilise: public function displayError($errorList) { $errorString = ""; foreach( $errorList as $key => $value ) { $errorString .= $value."<br/>"; } echo '<span class="warning" style="display: block;">'.$errorString.'</span>'; } Pour l'instant la fonction $errorString s'affiche tout en haut au dessus du header. Link to comment Share on other sites More sharing options...
tomasi Posted January 21, 2014 Author Share Posted January 21, 2014 Que faudrait-il modifier pour faire apparaitre les erreurs dans un message warning? Link to comment Share on other sites More sharing options...
Agostini Julien Posted January 21, 2014 Share Posted January 21, 2014 Tu souhaite le faire apparaitre sur le FO ou le BO ? Link to comment Share on other sites More sharing options...
tomasi Posted January 21, 2014 Author Share Posted January 21, 2014 Sur le BO Link to comment Share on other sites More sharing options...
Agostini Julien Posted January 21, 2014 Share Posted January 21, 2014 (edited) Dans ta fonction "php" getContent() je suppose que pour l'affichage de ton formulaire tu assigne ton "HTML" dans une variable ? Prenons l'exemple avec une variable "_html" public function getContent() { //soumission du formulaire if (Tools::isSubmit('submit')) { //si la valeur n'est pas vide if (!empty($value)) $this->_html .= $this->displayConfirmation($this->l('Vos valeurs sont correctes')); //sinon else $this->_html .= $this->displayError( $this->l('Vos valeurs ne sont pas correctes') ); } //affichage du formulaire $this->_html .= '<form>...</form>'; return $this->_html; } Edited January 21, 2014 by AgostiniJulien (see edit history) Link to comment Share on other sites More sharing options...
tomasi Posted January 21, 2014 Author Share Posted January 21, 2014 Pour faire plus simple comment afficher la function $error dans un message custom warning? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now