<?php
namespace App\Repository;
use App\Entity\AccessKeyModeTranslation;
use App\Entity\Collective;
use App\Entity\Locale;
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
use Doctrine\Common\Persistence\ManagerRegistry;
/**
* @method AccessKeyModeTranslation|null find($id, $lockMode = null, $lockVersion = null)
* @method AccessKeyModeTranslation|null findOneBy(array $criteria, array $orderBy = null)
* @method AccessKeyModeTranslation[] findAll()
* @method AccessKeyModeTranslation[] findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null)
*/
class AccessKeyModeTranslationRepository extends ServiceEntityRepository
{
/**
* AccessKeyModeTranslationRepository constructor.
* @param ManagerRegistry $registry
*/
public function __construct(ManagerRegistry $registry)
{
parent::__construct($registry, AccessKeyModeTranslation::class);
}
/**
* @param Collective $collective
* @param Locale $locale
* @return mixed
*/
public function findByCollectiveAndLocale(Collective $collective, Locale $locale)
{
return $this->createQueryBuilder('at')
->join('at.accessKeyMode', 'a')
->join('at.locale', 'l')
->join('a.collectives', 'c')
->andWhere('c.id = :collective')
->andWhere('l.id = :locale')
->setParameter('collective', $collective->getId())
->setParameter('locale', $locale->getId())
->getQuery()
->getResult()
;
}
}