Esempio n. 1
0
 public function fromCart(\Jigoshop\Entity\Cart $cart)
 {
     $order = new \Jigoshop\Entity\Order($this->options->get('tax.classes'));
     $state = $cart->getStateToSave();
     $state['items'] = unserialize($state['items']);
     $state['customer'] = unserialize($state['customer']);
     unset($state['shipping'], $state['payment']);
     $order->setTaxDefinitions($cart->getTaxDefinitions());
     $order->restoreState($state);
     $shipping = $cart->getShippingMethod();
     if ($shipping && $shipping instanceof ShippingMethod) {
         $order->setShippingMethod($shipping);
         $order->setShippingTax($cart->getShippingTax());
     }
     $payment = $cart->getPaymentMethod();
     if ($payment && $payment instanceof PaymentMethod) {
         $order->setPaymentMethod($payment);
     }
     return $order;
 }