/** * * @param type $cartData */ public function unserialize($cartData = array()) { if (!empty($cartData)) { foreach ($cartData as $item) { $cartItem = new Application_Model_Zendshop_CartItem(); $cartItem->setProductId($item['product_id']); $cartItem->setProductSku($item['product_sku']); $cartItem->setQuantity($item['quantity']); $this->setCartItems($cartItem); } } }
public function addToCart(Product $product, $quantity = 1, $method = 'add') { $cartSession = new Zend_Session_Namespace('shopping_cart'); $request = $this->getRequest(); if ($method == 'add') { $quantity = $cartSession->cartData[$product->getEntityId()]['quantity'] + 1; } $cart = new Application_Model_Zendshop_Cart(); $cart->unserialize($cartSession->cartData); $cartItem = new Application_Model_Zendshop_CartItem(); $cartItem->fromProduct($product); $cartItem->setQuantity($quantity); $cart->setCartItems($cartItem); $cartSession->cartData = $cart->serialize(); $cartSession->setExpirationSeconds(60 * 60 * 48); }