$address = new Address($address['id_address']); break; } } /* Create address */ if (is_array($address) && isset($address['id_address'])) { $address = new Address($address['id_address']); } if ((!$address || !$address->id) && $customer->id) { //If address does not exists, we create it $address = setCustomerAddress($ppec, $customer); $address->add(); } else { if ($customer->id) { //If address exists, we update it with new informations $address = setCustomerAddress($ppec, $customer, $address->id); $address->save(); } } if ($customer->id && !$address->id) { $ppec->logs[] = $ppec->l('Cannot create Address'); } /* Create Order */ if ($customer->id && $address->id) { $ppec->context->cart->id_customer = $customer->id; $ppec->context->cart->id_guest = $ppec->context->cookie->id_guest; if (!$ppec->context->cart->update()) { $ppec->logs[] = $ppec->l('Cannot update existing cart'); } else { $payment_cart = (bool) ($ppec->type != 'payment_cart'); $ppec->redirectToCheckout($customer, $payment_cart);
if (!isset($ppec->result['PAYMENTREQUEST_0_SHIPTOSTREET']) || !isset($ppec->result['PAYMENTREQUEST_0_SHIPTOCITY']) || !isset($ppec->result['SHIPTOZIP']) || !isset($ppec->result['COUNTRYCODE'])) { $ppec->redirectToCheckout($customer, $ppec->type != 'payment_cart'); } $addresses = $customer->getAddresses($ppec->context->language->id); foreach ($addresses as $address) { if ($address['alias'] == 'Paypal_Address') { $address = new Address($address['id_address']); break; } } // Create address if (is_array($address) && isset($address['id_address'])) { $address = new Address($address['id_address']); } if ((!$address || !$address->id) && $customer->id) { $address = setCustomerAddress($ppec, $customer); $address->add(); } if ($customer->id && !$address->id) { $ppec->logs[] = $ppec->l('Cannot create Address'); } // Create Order if ($customer->id && $address->id) { $ppec->context->cart->id_customer = $customer->id; $ppec->context->cart->id_guest = $ppec->context->cookie->id_guest; if (!$ppec->context->cart->update()) { $ppec->logs[] = $ppec->l('Cannot update existing cart'); } else { $payment_cart = (bool) ($ppec->type != 'payment_cart'); $ppec->redirectToCheckout($customer, $payment_cart); }