Samantha66 Posted July 27, 2011 Share Posted July 27, 2011 Bonjour, Je suis sous la dernière version de prestashop, la 1.4.3 et j'utilise pour ma boutique la commande en une seule étape. Pour des raisons de compatibilité avec mon back-office externe, je dois modifier l'enregistrement des adresses des clients lorsqu'ils s'inscrivent. Par exemple, si un client s'inscrit avec l'adresse de livraison similaire à l'adresse de facturation, je dois enregistrer dans la base de données 2 lignes, l'une avec l'alias Adresse de Livraison et l'autre avec Adresse de facturation, et même principe si les deux adresses sont différentes. J'avais réalisé ce système sur une version 1.3, mais sur une version 1.4, je n'arrive pas à trouver où les adresses sont enregistrées, j'ai regarder le fichier OrderOpcController.php, ainsi que quelques classes sans succès. Quelqu'un aurait-il une idée du fichier que je dois modifier ? Merci pour votre aide. Link to comment Share on other sites More sharing options...
Broceliande Posted July 27, 2011 Share Posted July 27, 2011 Bonjour, Je suis sous la dernière version de prestashop, la 1.4.3 et j'utilise pour ma boutique la commande en une seule étape. Pour des raisons de compatibilité avec mon back-office externe, je dois modifier l'enregistrement des adresses des clients lorsqu'ils s'inscrivent. Par exemple, si un client s'inscrit avec l'adresse de livraison similaire à l'adresse de facturation, je dois enregistrer dans la base de données 2 lignes, l'une avec l'alias Adresse de Livraison et l'autre avec Adresse de facturation, et même principe si les deux adresses sont différentes. J'avais réalisé ce système sur une version 1.3, mais sur une version 1.4, je n'arrive pas à trouver où les adresses sont enregistrées, j'ai regarder le fichier OrderOpcController.php, ainsi que quelques classes sans succès. Quelqu'un aurait-il une idée du fichier que je dois modifier ? Merci pour votre aide. A mon sens , de mémoire , il doit y avoir sur opc le même champs checkbox que sur le processus standard du type 'same_address' . (Je suis pas sûr du nom hein ! ) Il suffirait de rajouter la classe hidden à ce champ dans order_opc.tpl (toujours pas plus sûr du nom...) pour qu'il ne s'affiche pas et que le client soit contraint d'entrer deux fois l'adresse , qu'elle soit identique ou non . C'est une idée moyenne , mais une idée tout de même . Edit : moyenne mais qui prend 30 secondes à mettre en oeuvre ... Link to comment Share on other sites More sharing options...
Samantha66 Posted July 28, 2011 Author Share Posted July 28, 2011 Merci pour ta réponse. Je vais tester cette astuce, je vous tiens au courant ! Link to comment Share on other sites More sharing options...
Samantha66 Posted August 3, 2011 Author Share Posted August 3, 2011 Alors, au final j'ai utilisé ton astuce, avec un peu de javascript pour remplir automatiquement les champs de l'adresse de facturation lorsque l'on remplit l'adresse de livraison. Afin de toujours garder les alias "Adresse de livraison" et "Adresse de facturation", j'ai remplis les champs hidden "alias" avec ces valeurs là, et j'ai modifié le code du fichier AddressController.php (ligne 153) pour que l'adresse avec l'alias Adresse de facturation soit toujours attribuée à une adresse de facturation et de même pour l'adresse de livraison : if (!Tools::isSubmit('ajax')) { $to_update = true; if($address->alias = "Adresse de livraison") self::$cart->id_address_delivery = $address->id; elseif($address->alias = "Adresse de facturation") self::$cart->id_address_invoice = $address->id; // if (self::$cart->id_address_invoice == $address_old->id) // { // $to_update = true; // self::$cart->id_address_invoice = $address->id; // } // if (self::$cart->id_address_delivery == $address_old->id) // { // $to_update = true; // self::$cart->id_address_delivery = $address->id; // } if ($to_update) self::$cart->update(); } Ensuite, j'ai enlevé tous les boutons "Ajouter une nouvelle adresse" et "Supprimer une adresse" pour pas qu'il n'y est de doublons. Et voilà ! 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