/** * {@inheritDoc} */ public function getOrder() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'getOrder', array()); return parent::getOrder(); }
/** * Define query for findUserWithSameLogin() method * * @param \XLite\Model\Profile $profile Profile object * * @return \Doctrine\ORM\QueryBuilder */ protected function defineFindUserWithSameLoginQuery(\XLite\Model\Profile $profile) { $queryBuilder = $this->createQueryBuilder()->andWhere('p.login = :login')->andWhere('p.profile_id != :profileId')->setParameter('login', $profile->getLogin())->setParameter('profileId', $profile->getProfileId() ?: 0)->setMaxResults(1); if ($profile->getOrder()) { $queryBuilder->innerJoin('p.order', 'porder')->andWhere('porder.order_id = :orderId')->setParameter('orderId', $profile->getOrder()->getOrderId()); } else { $queryBuilder->andWhere('p.order is null'); } return $queryBuilder; }