private function addArrayToCart($product) { $op = new \Club\ShopBundle\Entity\CartProduct(); $op->setCart($this->cart); $op->setProductName($product['product_name']); $op->setPrice($product['price']); $op->setQuantity(1); $op->setType($product['type']); $this->updateProductToCart($op); }
private function addProductToCart(\Club\ShopBundle\Entity\Product $product) { $this->checkLocation($product); $trigger = 0; // check if its already in the cart foreach ($this->cart->getCartProducts() as $prod) { if ($prod->getProduct()->getId() == $product->getId()) { $prod = $this->modifyQuantity($prod); $trigger = 1; } } if (!$trigger) { $op = new \Club\ShopBundle\Entity\CartProduct(); $op->setCart($this->cart); $op->setProduct($product); $op->setProductName($product->getProductName()); $op->setPrice($product->getSpecialPrice()); $op->setVatRate($product->getVat()->getRate()); $op->setQuantity(1); $op->setType('product'); foreach ($product->getProductAttributes() as $attr) { $opa = new \Club\ShopBundle\Entity\CartProductAttribute(); $opa->setCartProduct($op); $opa->setValue($attr->getValue()); $opa->setAttributeName($attr->getAttribute()->getAttributeName()); $op->addCartProductAttribute($opa); } $this->updateProductToCart($op); } }