Jump to content

[résolu] fatal error retour paiement Ogone


Recommended Posts

Bonjour,

 

Je vois passer une fatal error de php lorsque Ogone (module paiement) appelle les urls de retour.

 

PHP Fatal error:  Call to a member function getPageLink() on a non-object in /.../classes/Mail.php on line 237

 

L'erreur se passe dans Mail.php line 237 donc qui correspond à :

$template_vars['{my_account_url}'] = Context::getContext()->link->getPageLink('my-account', true, Context::getContext()->language->id);

 

J'imagine que si je mets en commentaire cette ligne, les suivantes enverront aussi une fatal error puisqu'elles utilisent aussi le contexte "link".

 

Connaissez-vous le problème qui serait a priori lié au contexte non récupéré ?

 

Merci de votre aide, cette erreur empêche complètement la validation des commandes.

Edited by PSBeginner (see edit history)
Link to comment
Share on other sites

J'ai temporairement mis ceci dans Mail.php pour éviter l'erreur fatal.

	    $link = Context::getContext()->link;
	    if($link instanceof Link){
		    $template_vars['{my_account_url}'] = $link->getPageLink('my-account', true, Context::getContext()->language->id);
		    $template_vars['{guest_tracking_url}'] = $link->getPageLink('guest-tracking', true, Context::getContext()->language->id);
		    $template_vars['{history_url}'] = $link->getPageLink('history', true, Context::getContext()->language->id);
	    }

Mais si quelqu'un connait la vraie source du problème, je suis très preneur...

 

Merci

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...

Du coup vous pouvez le faire dans votre condition avec :

Context::getContext()->link = new Link();

 

Oui j'ai du le faire merci...je vais chercher où manque cette initialisation car je ne veux pas conserver cette modif de classe native.

 

Pour info Prestashop a retiré ce module de la liste des modules fournis suite à de nombreux bugs retournés.

Rien d'étonnant en effet...je lui ai déjà apporté plusieurs corrections et je dois encore en ajouter.

Merci pour l'info

Link to comment
Share on other sites

Ce problème avec la 1.5.2 touche aussi le modèle de paiement pour le CIC.

En fait malgré le fait que le numéro de release n'est pas bougé la classe Mail a bien été modifié entre la 1.5.1 et la 1.5.2

 

Il y a eu les trois lignes suivantes d'ajoutées :

$template_vars['{my_account_url}'] = Context::getContext()->link->getPageLink('my-account', true, Context::getContext()->language->id);

$template_vars['{guest_tracking_url}'] = Context::getContext()->link->getPageLink('guest-tracking', true, Context::getContext()->language->id);

$template_vars['{history_url}'] = Context::getContext()->link->getPageLink('history', true, Context::getContext()->language->id);

Link to comment
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...