modify addQuantity method

This commit is contained in:
Manuel Raynaud
2013-08-07 17:03:30 +02:00
parent 02faa94cb4
commit de171e3a26

View File

@@ -7,6 +7,7 @@ use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Thelia\Core\Event\CartEvent;
use Thelia\Core\Event\TheliaEvents;
use Thelia\Model\Base\CartItem as BaseCartItem;
use Thelia\Model\ConfigQuery;
class CartItem extends BaseCartItem
{
@@ -26,9 +27,41 @@ class CartItem extends BaseCartItem
}
}
public function postUpdate(ConnectionInterface $con = null)
{
if ($this->dispatcher) {
$cartEvent = new CartEvent($this->getCart());
$this->dispatcher->dispatch(TheliaEvents::CART_MODIFYITEM, $cartEvent);
}
}
/**
* @param $value
* @return $this
*/
public function addQuantity($value)
{
$this->setQuantity($this->getQuantity() + $value);
$currentQuantity = $this->getQuantity();
$newQuantity = $currentQuantity + $value;
if($newQuantity <= 0)
{
$newQuantity = $currentQuantity;
}
if(ConfigQuery::read("verifyStock", 1) == 1)
{
$productSaleElements = $this->getProductSaleElements();
if($productSaleElements->getQuantity() < $newQuantity) {
$newQuantity = $currentQuantity;
}
}
$this->setQuantity($currentQuantity);
return $this;
}