Esempio n. 1
0
 /**
  * Define query for findDuplicates()
  *
  * @param string                                  $code          Code
  * @param \XLite\Module\CDev\Coupons\Model\Coupon $currentCoupon Current coupon OPTIONAL
  *
  * @return \XLite\Model\QueryBuilder\AQueryBuilder
  */
 protected function defineFindDuplicatesQuery($code, \XLite\Module\CDev\Coupons\Model\Coupon $currentCoupon = null)
 {
     $queryBuilder = $this->createQueryBuilder('c')->andWhere('COLLATE(c.code, utf8_bin) = :code')->setParameter('code', $code);
     if ($currentCoupon) {
         $queryBuilder->andWhere('c.id != :cid')->setParameter('cid', $currentCoupon->getId());
     }
     return $queryBuilder;
 }
Esempio n. 2
0
 /**
  * Check if coupon already present
  *
  * @param \XLite\Module\CDev\Coupons\Model\Coupon $coupon
  *
  * @return boolean
  */
 public function containsCoupon(\XLite\Module\CDev\Coupons\Model\Coupon $coupon)
 {
     return array_reduce($this->getUsedCoupons()->toArray(), function ($carry, $item) use($coupon) {
         return $carry || $item->getCoupon()->getId() === $coupon->getId();
     }, false);
 }
 /**
  * {@inheritDoc}
  */
 public function getId()
 {
     if ($this->__isInitialized__ === false) {
         return (int) parent::getId();
     }
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'getId', array());
     return parent::getId();
 }