Jump to content

[MODULE] CMCIC Paiement #Bug logNotificationRequest


Recommended Posts

La version 1.4.3 du module CMCICPAIEMENT comporte un bug dans la méthode logNotificationRequest() du fichier cmcicpaiement.php.

Le nom de la variable contenant la référence du panier à insérer est erronée, cette référence ne s'enregistre donc pas dans la table cmcic_notification_event.

Remplacer le code suivant ($data_reference) :

public function logNotificationRequest($cart_reference, $codeRetour)
{
	Db::getInstance()->insert('cmcic_notification_event', array(
		'cart_reference' => pSQL($data_reference),		// Ligne à modifier
		'code-retour'    => pSQL($codeRetour),
		'created_at'     => date('Y-m-d H:i:s')
	));
}

Par ce code ($cart_reference) :

public function logNotificationRequest($cart_reference, $codeRetour)
{
	Db::getInstance()->insert('cmcic_notification_event', array(
		'cart_reference' => pSQL($cart_reference),
		'code-retour'    => pSQL($codeRetour),
		'created_at'     => date('Y-m-d H:i:s')
	));
}

Une fois cette modification appliquée la référence s'enregistre bien en base.

 

Link to comment
Share on other sites

  • 2 years later...

Bonjour,

@iziGwen, cela semble corrigé à partir des version suivantes du module.

Dans mon cas, j'ai la version 4.1.0 du module CMCICPAIEMENT et la table `cmcic_notification_event` ne s'est pas créée, ni à l'installation du module, ni à sa réinitialisation, ni à sa désinstallation/réinstallation !

Pourtant on l'a bien dans la fonction install() du fichier cmcicpaiement.php :

public function install()
{
        $this->updatePaymentPortalUrl();

        $sql = 'CREATE TABLE IF NOT EXISTS `' . _DB_PREFIX_ . 'cmcic_notification_event` (' .
            '`event_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,' .
            '`cart_reference` INT(10) UNSIGNED DEFAULT NULL,' .
            '`code-retour` VARCHAR(15) DEFAULT NULL,' .
            '`created_at` DATETIME DEFAULT NULL,' .
            'PRIMARY KEY (`event_id`)' .
            ') DEFAULT CHARSET=utf8;';

}

Cela a pour effet de générer l'erreur suivante :

*ERROR*   v1.7.6.4  2020/06/21 - 12:28:33: Table 'monprestashop.ps_cmcic_notification_event' doesn't exist<br /><br /><pre>
            SELECT 1
            FROM `ps_cmcic_notification_event`
            WHERE `cart_reference` = "189"
            AND `code-retour` = "paiement" LIMIT 1</pre> at line 769 in file classes/db/Db.php

D'autres cas similaires ? Une idée ?
 

Edited by Klemart3D (see edit history)
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...