shallFallback = $_COOKIE['optimize'] != 1; parent::__construct($controller); } /** * Resolve the page ID * * @param ServerRequestInterface $request * @param RequestHandlerInterface $handler * @return ResponseInterface */ public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { if ($this->shallFallback) { return parent::process($request, $handler); } $otWebsiteRepository = GeneralUtility::makeInstance(ObjectManager::class)->get(OtWebsiteRepository::class); $devMode = $_SERVER['TYPO3_CONTEXT'] == "Development"; $params = $request->getQueryParams(); $pageUid = $otWebsiteRepository->matchUriToPage($request->getUri(), $devMode); if (!$pageUid > 0) { return GeneralUtility::makeInstance(ErrorController::class)->pageNotFoundAction( $request, 'The requested page does not exist', ['code' => PageAccessFailureReasons::PAGE_NOT_FOUND] ); } $params['id'] = $pageUid; $request = $request->withQueryParams($params); return parent::process($request, $handler); } }