matcher->matchRequest($request); $site = $routeResult->getSite(); if ($site instanceof Site && $site->invalidSets !== []) { $invalidSets = implode(', ', array_keys($site->invalidSets)); $this->logger->error('Site {identifier} depends on unavailable sets: {invalidSets}', [ 'identifier' => $site->getIdentifier(), 'invalidSets' => $invalidSets, ]); return $this->errorController->internalErrorAction( $request, sprintf( 'Site %s depends on unavailable sets: %s', $site->getIdentifier(), $invalidSets, ), ['code' => PageAccessFailureReasons::INVALID_SITE_SETS] ); } $request = $request->withAttribute('site', $site); $request = $request->withAttribute('language', $routeResult->getLanguage()); $request = $request->withAttribute('routing', $routeResult); if ($routeResult->getLanguage() instanceof SiteLanguage) { Locales::setSystemLocaleFromSiteLanguage($routeResult->getLanguage()); } return $handler->handle($request); } }