* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ namespace PrestaShopBundle\Entity\Repository; use PrestaShopBundle\Entity\ShopGroup; /** * ShopGroupRepository. * * This class was generated by the Doctrine ORM. Add your own custom * repository methods below. */ class ShopGroupRepository extends \Doctrine\ORM\EntityRepository { /** * Get a list of shop groups for a given search term * * @param string $searchTerm * * @return ShopGroup[] */ public function findBySearchTerm(string $searchTerm): array { $qb = $this->createQueryBuilder('sg') ->select('sg') ->where('sg.active = true') ->andWhere('sg.deleted = false') ->andWhere('LOWER(sg.name) LIKE :searchTerm') ->setParameter('searchTerm', '%' . strtolower($searchTerm) . '%'); return $qb->getQuery()->getResult(); } /** * @return ShopGroup[] */ public function findActive(): array { return $this->findBy(['active' => true]); } }