Jump to content
Daaaaad

Surcharge du front controller d'un module sous Prestashop 1.7

Recommended Posts

Bonjour à tous,

Je tente de surcharger le contrôleur "/modules/paybyinvoice/controllers/front/validation.php" pour modifier son comportement.

J'ai donc créé un nouveau fichier "/override/modules/paybyinvoice/controllers/front/validation.php" ayant pour définition : 

class PayByInvoiceValidationModuleFrontControllerOverride extends PayByInvoiceValidationModuleFrontController
{ 

et contenant une surcharge de méthode.

Malheureusement, et ce malgré avoir supprimé plusieurs fois le fichier "/app/cache/prod/class_index.php", c'est toujours la méthode présente dans le fichier source qui est prise en compte :(

Une idée ?

Merci,
David.

Share this post


Link to post
Share on other sites

Tu peux overrider le fichier principal du module (donc modules/paybyinvoice/paybyinvoice.php) mais il me semble que tu ne peux overrider les autres fichiers du module.

Donc peux essayer d'overrider le fichier principal pour appeler d'autres controllers (si c'est possible)

Share this post


Link to post
Share on other sites

Salut @coeos.pro, merci pour ta réponse :)

Le contrôleur que j'essaye de surcharger (validation) est appelé de cette manière : 

$newOption->setCallToActionText($this->l('Pay with Invoice'))
            ->setAction($this->context->link->getModuleLink($this->name, 'validation', array(), true))
            ->setAdditionalInformation($this->fetch('module:paybyinvoice/views/templates/hook/paybyinvoice.tpl'));

Je pense donc que cette partie est correcte... c'est à l'appel de l'URL d'action que Prestashop devrait vérifier s'il existe une surcharge, non ?

Share this post


Link to post
Share on other sites

Salut @coeos.pro,

Pourquoi ne pas modifier directement le code du module ? ... ma modification sauterait à la prochaine mise à jour de ce module :(

Share this post


Link to post
Share on other sites

Le souci, c'est que je ne suis pas le seul à avoir accès à l'admin du site : le client aussi... et ça m'a déjà joué des tours ;)

De plus, ne pas mettre le module à jour => ne pas corriger les failles de sécurité, pas top :(

Share this post


Link to post
Share on other sites

Si le webmaster du module n'est pas fichu de faire des modules non buggé et non truffé de failles de sécurités supprime le module et paye un module digne de ce nom.

Share this post


Link to post
Share on other sites

Si votre client n'a pas pris l'option zen vous n'aurez pas de mises a jour dispo gratuitement au bout de 90 jours

Share this post


Link to post
Share on other sites

C'est pas faux :) Maintenant, je propose de plus en plus d'intégrer cette option dans mes plans de maintenance ;)

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More