Quand une adresse est-elle enregistrée pour le client ?
-
12-12-2019 - |
Question
Quand une adresse est-elle enregistrée chez le client ?Je veux dire, est-ce en cours de paiement lorsque saveBilling est appelé ?Ou est-ce que la conversion du devis en commande est en cours lorsque saveOrder est appelé ?
Dans cette question, enregistrer signifie que l'adresse peut être réutilisée par le client lors d'un autre achat sans avoir à saisir à nouveau l'adresse.
La solution
Veuillez consulter Mage_Checkout_Model_Type_Onepage
Magento créer un objet de adresse du formulaire client
Mage::getModel('customer/form');
$addressForm->setFormCode('customer_address_edit')
->setEntityType('customer_address');
alors
sur la fonction _prepareNewCustomerQuote
et _prepareCustomerQuote
copie magento sales_quote_address fields object
à customer address object using
à partir d'une copie de terrain Mage::helper('core')->copyFieldset()
fonction et Mage_Customer_Address function -addAddress
lequel copy fields between customer_address and order quote object
et ici aussi définir l'adresse d'expédition et de facturation par défaut lequel sélection par défaut lors de la prochaine commande