| 1234567891011121314151617181920212223242526272829303132333435363738 |
- <?php
- declare(strict_types=1);
- namespace App\Doctrine\Access\AdditionalExtension;
- use Doctrine\ORM\QueryBuilder;
- use Symfony\Component\HttpFoundation\RequestStack;
- /**
- * Contrainte supplémentaire pour CurrentAccessExtension.
- * Ajoute un critère de dates.
- */
- class DateTimeConstraintExtensionAdditional implements AdditionalAccessExtensionInterface
- {
- public function __construct(
- private RequestStack $requestStack,
- ) {
- }
- public function support(string $name): bool
- {
- return
- $this->requestStack->getMainRequest()->isMethod('GET')
- ;
- }
- public function addWhere(QueryBuilder $queryBuilder): void
- {
- $rootAliases = $queryBuilder->getRootAliases();
- if (empty($rootAliases)) {
- throw new \LogicException('No root alias defined.');
- }
- $rootAlias = $rootAliases[0];
- $queryBuilder->innerJoin(sprintf('%s.organizationFunction', $rootAlias), 'organization_function');
- }
- }
|