Esempio n. 1
0
 private function addCartAmountControls()
 {
     $container = $this->addContainer('amount');
     foreach ($this->cart->getItems() as $item) {
         $errorMessage = 'Amount must be positive number.';
         $container->addText($item->getId(), 'Amount')->setType('number')->setDefaultValue($item->getAmount())->addRule(self::INTEGER, $errorMessage)->addRule(self::RANGE, $errorMessage, [1, null]);
     }
     return $container;
 }
Esempio n. 2
0
 public function __construct(Cart $cart, $number, PaymentType $paymentType)
 {
     if (count($cart->getItems()) === 0) {
         throw new InvalidEnumException('Cannot create order from empty cart.');
     }
     if (strlen($number) !== self::NUMBER_LENGTH) {
         throw new EntityInvalidArgumentException(sprintf('Order number length must be exactly %d characters.', self::NUMBER_LENGTH));
     }
     $this->number = $number;
     $this->paymentType = $paymentType->getValue();
     $cart->setOrder($this);
     $this->cart = $cart;
 }