2 declare(strict_types = 1);
34 DeletedRestriction::class,
35 FrontendWorkspaceRestriction::class,
36 HiddenRestriction::class,
37 StartTimeRestriction::class,
38 EndTimeRestriction::class,
39 FrontendGroupRestriction::class,
55 $this->context =
$context ?? GeneralUtility::makeInstance(Context::class);
56 foreach ($this->defaultRestrictionTypes as $restrictionType) {
72 foreach ($this->restrictions as $restriction) {
73 foreach ($queriedTables as $tableAlias => $tableName) {
74 $disableRestriction =
false;
77 $visibilityAspect = $this->context->getAspect(
'visibility');
79 if ($tableName ===
'pages') {
80 $disableRestriction = $visibilityAspect->includeHiddenPages();
82 $disableRestriction = $visibilityAspect->includeHiddenContent();
85 if (!$disableRestriction) {
86 $constraints[] = $restriction->buildExpression([$tableAlias => $tableName], $expressionBuilder);
90 return $expressionBuilder->
andX(...$constraints);