Antoniolav Posted April 2, 2015 Share Posted April 2, 2015 (edited) Bonsoir, je recherche désespérement depuis plusieurs jours l'endroit (la classe, le contrôleur ou le fichier) sur lequel Prestashop enregistre le message d'un client quand il passe une commande. Je parle du message complémentaire qu'il peut laisser attaché à sa commande si il a besoin de fournir des informations supplémentaires. Il y a une table qui s'appelle "PS_messages" et qui stocke cette information : j'aurais besoin de connaître l'emplacement du code source qui fait la requête d'insertion dans la BDD. Un GRAND GRAND merci d'avance Edited April 2, 2015 by Antoniolav (see edit history) Link to comment Share on other sites More sharing options...
J. Danse Posted April 2, 2015 Share Posted April 2, 2015 Ca débute par ici: https://github.com/PrestaShop/PrestaShop/blob/1.6/classes/PaymentModule.php#L425 Link to comment Share on other sites More sharing options...
Antoniolav Posted April 2, 2015 Author Share Posted April 2, 2015 (edited) Bonsoir J.Danse, Merci pour ton aide.Malheureusement ça n'a pas l'air d'être cela : si par exemple je supprime toutes ces lignes-là : $msg = new Message(); $message = strip_tags($message, '<br>'); if (Validate::isCleanHtml($message)) { if (self::DEBUG_MODE) PrestaShopLogger::addLog('PaymentModule::validateOrder - Message is about to be added', 1, null, 'Cart', (int)$id_cart, true); $msg->message = $message; $msg->id_cart = (int)$id_cart; $msg->id_customer = intval($order->id_customer); $msg->id_order = intval($order->id); $msg->private = 1; $msg->add(); } .. du fichier en question et que je laisse un blanc à la place, des lignes se créent encore sur la table PS_MESSAGES à chaque fois qu'un client arrive à l'étape 4 (la livraison, order-carrier si je ne me trompe pas) Merci quand même pour ta piste mais je recherche encore une solution Edited April 2, 2015 by Antoniolav (see edit history) Link to comment Share on other sites More sharing options...
J. Danse Posted April 2, 2015 Share Posted April 2, 2015 Heu oui, j'ai dis une bétise ,de fait. Voyez par ici: https://github.com/PrestaShop/PrestaShop/blob/1.6/controllers/front/OrderController.php#L316 et https://github.com/PrestaShop/PrestaShop/blob/1.6/controllers/front/ParentOrderController.php#L181 Link to comment Share on other sites More sharing options...
Antoniolav Posted April 2, 2015 Author Share Posted April 2, 2015 Re-bonsoir, j'avais en effet mis mon nez du côté de ces fichiers là, en vain. En fait j'ai crée une nouvelle colonne dans cette fameuse table Ps_messages dans laquelle, à chaque nouvelle commande, je souhaitais re-inclure en quelque sorte en doublon ce fameux message... mais cela ne me faire guère avancer. Merci quand même pour le temps que tu m'as consacré Link to comment Share on other sites More sharing options...
J. Danse Posted April 2, 2015 Share Posted April 2, 2015 Tout dépend de ce que tu souhaites faire au final, mai il est également possible d'utiliser un module/hook pointant sur l'ajout d'un "Message", sinon. Mais ce sera valable pour chaque new Message()->add(). Link to comment Share on other sites More sharing options...
Antoniolav Posted April 2, 2015 Author Share Posted April 2, 2015 Effectivement ce ne serait pas bon car il faudrait que cette requête SQL ne s’exécute que lors qu'il y aura une nouvelle commande mais pas lors d'un échange SAV par exemple. Un peu dans le même esprit que ton idée, je suis en train de créer un module que je n'appellerais que sur montheme/order-carrier.tpl via {hook h=monmodule variable_a_passer_au_module=$message_du_client} : une fois le message client récupérer dans mon module, je pourrais faire en PHP ma requête SQL d'insertion comme je e souhaite. Je croise les doigts Link to comment Share on other sites More sharing options...
J. Danse Posted April 2, 2015 Share Posted April 2, 2015 A dire vrai, ce ne serait pas un soucis. Pour une raison historique ou que j'ignore, on a deux objets différents selon le type de message: Message ou CustomerMessage. Et, dans le panier, c'est l'objet Message qui est utilisée. Ca peut donc se faire, ceci dit ! ;-) Link to comment Share on other sites More sharing options...
Antoniolav Posted April 2, 2015 Author Share Posted April 2, 2015 (edited) Merci pour l'info Ca depasse cependant quelque peu mon niveau technique + ma connaissance en dev prestashop.J'essayerais de m'y intéresser dans les jours à venir quand j'aurais termine mon petit "chantier" relatif au problème exposé en début de topic.Pour l'instant, avec mon module maison comme décrit juste au-dessus, je réussi bien à récupérer mon message client jusqu'au module mais j'ai quand même une erreur qui s'affiche... ? Sur order-carrier.tpl : {assign var='variable_test' value='contenudetest'} {hook h=monhook variable_a_passer=$variable_test} et sur mon module : public function hookmonhook ($params) { $boboliligg = $params[variable_a_passer]; global $smarty; $smarty->assign('boeing',$boboliligg); return $this->display(__FILE__, 'testantoine.tpl'); } "contenudetest" arrive donc bien dans le fichier de base .php de mon module car j'arrive à l'afficher sur testantoine.tpl mais j'ai quand même toujours cette erreur qui s'afiche juste avant quand même : Notice: Use of undefined constant variable_a_passer - assumed 'variable_a_passer' in /[iCI CHEMIN VERS LE FICHIER .PHP DE MON MONDULE] on line 42PS : la lgne 42 -> $boboliligg = $params[variable_a_passer]; Bizarre hein ? Je continue de creuser P.S : j'ai modifié le titre de mon topic pour qu'il soit plus explicite à l'avenir, si des gens rencontrent une problématique similaire Edited April 2, 2015 by Antoniolav (see edit history) Link to comment Share on other sites More sharing options...
J. Danse Posted April 2, 2015 Share Posted April 2, 2015 ;-) $boboliligg = $params['variable_a_passer']; Ce sera mieux, 1 Link to comment Share on other sites More sharing options...
Antoniolav Posted April 2, 2015 Author Share Posted April 2, 2015 Suis-je bête ! En effet, la fatigue de la semaine se fait sentir Ca fait vraiment plaisir cette aide de la communauté en tout cas, j'essaierais de venir mettre à jour ce topic quand j'aurais fini ce chantier. Un grand grand merci à toi ! Link to comment Share on other sites More sharing options...
J. Danse Posted April 2, 2015 Share Posted April 2, 2015 Avec grand plaisir, ne pas hésitez pour d'autres éventuelles questions (à ce sujet ou sur un autre sujet, ;-)) 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