jurnet Posted April 24, 2017 Share Posted April 24, 2017 Bonjour, sous Prestashop 1.7, dans la partie des bons de reductions du fichier CartRule.php, on se rend compte que les displayError envoi une reponse en anglais au client. Quelle est la bonne facon de faire pour mettre en francais ce texte de retour utilisateur ? Exemple : public function checkValidity(Context $context, $alreadyInCart = false, $display_error = true, $check_carrier = true) { if (!CartRule::isFeatureActive()) { return false; } if (!$this->active) { return (!$display_error) ? false : Tools::displayError('This voucher is disabled'); } if (!$this->quantity) { return (!$display_error) ? false : Tools::displayError('This voucher has already been used'); } if (strtotime($this->date_from) > time()) { return (!$display_error) ? false : Tools::displayError('This voucher is not valid yet'); } if (strtotime($this->date_to) < time()) { return (!$display_error) ? false : Tools::displayError('This voucher has expired'); } Link to comment Share on other sites More sharing options...
jurnet Posted April 25, 2017 Author Share Posted April 25, 2017 Personne pour répondre à mon sujet sur les bonnes pratiques de PS 1.7 et la page CartRule.php ? Link to comment Share on other sites More sharing options...
Matt K. Posted April 25, 2017 Share Posted April 25, 2017 (edited) Bonjour, Je connais pas Prestashop 1.7 mais... je vais essayé. ^^ Si j'ai bien compris displayError permet de traduire l'erreur (https://github.com/PrestaShop/PrestaShop/blob/1.7.1.x/classes/Tools.php#L961). Donc théoriquement, il faudrait écrire l'erreur en anglais dans le code et la traduire en BO probablement (voir http://doc.prestashop.com/display/PS17/Translations). Néanmoins, ce qui me dérange c'est la ligne 966 ou ils écrivent Fatal error en dur alors que, pour moi, il faudrait passer la variable $string. As-tu testé la mécaniques pour voir si c'est les bonnes erreurs affichées (et pas Fatal error) ? J'espère que ça t'aidera ou que ça en fasse réagir d'autre. Bon courage. Edited April 25, 2017 by Matt K. (see edit history) Link to comment Share on other sites More sharing options...
jurnet Posted April 26, 2017 Author Share Posted April 26, 2017 Merci Matt K. Mais je n'ai pas reussi a utiliser $this->trans ou lang afin de faire appel a un fichier deporté. Et rien non plu dans le BO pour les traductions Donc en attendant une reponse j'ai modifié en francais le contenu de ce fichier Link to comment Share on other sites More sharing options...
BeComWeb Posted April 27, 2017 Share Posted April 27, 2017 Dans la 1.7.1.1 le code a été corrigé public function checkValidity(Context $context, $alreadyInCart = false, $display_error = true, $check_carrier = true) { if (!CartRule::isFeatureActive()) { return false; } if (!$this->active) { return (!$display_error) ? false : $this->trans('This voucher is disabled', array(), 'Shop.Notifications.Error'); } if (!$this->quantity) { return (!$display_error) ? false : $this->trans('This voucher has already been used', array(), 'Shop.Notifications.Error'); } if (strtotime($this->date_from) > time()) { return (!$display_error) ? false : $this->trans('This voucher is not valid yet', array(), 'Shop.Notifications.Error'); } if (strtotime($this->date_to) < time()) { return (!$display_error) ? false : $this->trans('This voucher has expired', array(), 'Shop.Notifications.Error'); } 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