Do not allow to cumulate the coupon many times. Fix #217

This commit is contained in:
Manuel Raynaud
2014-02-19 16:41:22 +01:00
parent 41175e4a94
commit dafce9e070
6 changed files with 25 additions and 26 deletions

View File

@@ -136,24 +136,26 @@ class Coupon extends BaseAction implements EventSubscriberInterface
$consumedCoupons = array();
}
// Prevent accumulation of the same Coupon on a Checkout
$consumedCoupons[$event->getCode()] = $event->getCode();
if (!isset($consumedCoupons[$event->getCode()])) {
// Prevent accumulation of the same Coupon on a Checkout
$consumedCoupons[$event->getCode()] = $event->getCode();
$this->request->getSession()->setConsumedCoupons($consumedCoupons);
$this->request->getSession()->setConsumedCoupons($consumedCoupons);
$totalDiscount = $this->couponManager->getDiscount();
$totalDiscount = $this->couponManager->getDiscount();
$this->request
->getSession()
->getCart()
->setDiscount($totalDiscount)
->save();
$this->request
->getSession()
->getOrder()
->setDiscount($totalDiscount)
// ->save()
;
$this->request
->getSession()
->getCart()
->setDiscount($totalDiscount)
->save();
$this->request
->getSession()
->getOrder()
->setDiscount($totalDiscount)
// ->save()
;
}
}
}