cybermad Posted March 30 Share Posted March 30 Bonjour, J'ai une boutique sous Prestashop 1.7. J'ai installé un module de paiement par CB mais le problème que je rencontre est identique avec d'autres solutions de paiements, donc ce n'est pas lié à cela. J'ai migré vers la toute dernière version la 1.7.8.11 et le message d'erreur arrivent toujours. Concrètement pour la CB, sous monetico j'ai "Interface retour: Erreur". Dans les logs j'ai cela; [Sat Mar 30 11:48:48.434655 2024] [proxy_fcgi:error] [pid 19541:tid 140127376492288] [client 145.226.30.192:55128] AH01071: Got error 'PHP message: PHP Fatal error: Uncaught Error: Access to undeclared static property: OrderDetailHelper::$orderDetails in /home/mondomaine/domains/mondomaine.fr/public_html/override/classes/order/OrderDetail.php:12\nStack trace:\n#0 /home/mondomaine/domains/mondomaine.fr/public_html/modules/configurator/classes/OrderDetailHelper.php(131): OrderDetail->saveTaxCalculator()\n#1 /home/mondomaine/domains/mondomaine.fr/public_html/modules/configurator/configurator.php(1251): OrderDetailHelper::generateConfiguratorOrderDetail()\n#2 /home/mondomaine/domains/mondomaine.fr/public_html/classes/Hook.php(1007): Configurator->hookActionObjectOrderDetailAddAfter()\n#3 /home/mondomaine/domains/mondomaine.fr/public_html/classes/Hook.php(431): HookCore::coreCallHook()\n#4 /home/mondomaine/domains/mondomaine.fr/public_html/classes/Hook.php(944): HookCore::callHookOn()\n#5 /home/mondomaine/domains/mondomaine.fr/public_html/classes/ObjectModel.php(628): HookCore::exec()\n#6 /home/mondomaine/domains/mondomaine.fr/public_html/classes/order/OrderDetail.php(936): ObjectModelCore->add()\n#7 /home/mondomaine/domains/...' côté client tout est ok lors du process, sauf qu'il ne reçoit pas d'email de confirmation de commande. Côté admin, la commande est bien enregistrée, mais elle est sans état. Je pense qu'il y a un bug avec la fonction validateOrder(). Avez-vous déjà rencontré ce problème ? Une idée de solution ? Merci. Link to comment Share on other sites More sharing options...
Eolia Posted March 30 Share Posted March 30 Corrigez l'override concerné et ajoutez la déclaration de la variable concernée dans OrderDetailHelper (static $orderDetails;) Link to comment Share on other sites More sharing options...
cybermad Posted March 30 Author Share Posted March 30 Merci de la réponse. oh... vous me mettez sur la voie. J'étais focus validateOrder... mais en vous lisant je me dis: "qu'est-ce que c'est que cet override ????" C'est un module tiers qui ajouté cet override: Configurateur avancé de produit. Cette boutique était en pause depuis 18 mois je n'ai donc pas pu à l'époque tester la solution de paiement. Override: <?php class OrderDetail extends OrderDetailCore { /* * module: configurator * date: 2022-10-10 09:33:54 * version: 4.37.2 */ public function saveTaxCalculator(Order $order, $replace = false) { require_once(dirname(__FILE__) . '/../../../modules/configurator/classes/OrderDetailHelper.php'); if (is_array(OrderDetailHelper::$orderDetails) && in_array($this->id, OrderDetailHelper::$orderDetails)) { return true; } parent::saveTaxCalculator($order, $replace); } /* * module: configurator * date: 2022-11-03 16:04:11 * version: 4.9.3 */ public function __construct($id = null, $id_lang = null, $context = null) { self::$definition['fields']['product_name'] = array( 'type' => self::TYPE_HTML, 'validate' => 'isCleanHtml', 'required' => true ); parent::__construct($id, $id_lang, $context); } } Je n'arrive pas trop à identifier le problème... L'avez-vous concrètement rencontré et résolu ? Merci. Link to comment Share on other sites More sharing options...
Eolia Posted March 30 Share Posted March 30 Non, mais je vois qu'il appelle une variable statique dans sa propre classe: OrderDetailHelper::$orderDetails et qu'apparemment celle-ci n'existe pas. 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