eZ\Publish\Core\MVC\Symfony\Controller\Content\PreviewController::getForwardRequest PHP Метод

getForwardRequest() защищенный Метод

Returns the Request object that will be forwarded to the kernel for previewing the content.
protected getForwardRequest ( eZ\Publish\API\Repository\Values\Content\Location $location, eZ\Publish\API\Repository\Values\Content\Content $content, SiteAccess $previewSiteAccess, Request $request, string $language ) : Request
$location eZ\Publish\API\Repository\Values\Content\Location
$content eZ\Publish\API\Repository\Values\Content\Content
$previewSiteAccess eZ\Publish\Core\MVC\Symfony\SiteAccess
$request Symfony\Component\HttpFoundation\Request
$language string
Результат Symfony\Component\HttpFoundation\Request
    protected function getForwardRequest(Location $location, Content $content, SiteAccess $previewSiteAccess, Request $request, $language)
    {
        $forwardRequestParameters = array('_controller' => UrlAliasRouter::VIEW_ACTION, '_route' => UrlAliasGenerator::INTERNAL_CONTENT_VIEW_ROUTE, '_route_params' => array('contentId' => $content->id, 'locationId' => $location->id), 'location' => $location, 'content' => $content, 'viewType' => ViewManagerInterface::VIEW_TYPE_FULL, 'layout' => true, 'params' => array('content' => $content, 'location' => $location, 'isPreview' => true, 'language' => $language), 'siteaccess' => $previewSiteAccess, 'semanticPathinfo' => $request->attributes->get('semanticPathinfo'));
        if ($this->controllerChecker->usesCustomController($content, $location)) {
            $forwardRequestParameters = ['_controller' => 'ez_content:viewLocation', '_route' => self::INTERNAL_LOCATION_VIEW_ROUTE] + $forwardRequestParameters;
        }
        return $request->duplicate(null, null, $forwardRequestParameters);
    }

Usage Example

 protected function getForwardRequest(Location $location, Content $content, SiteAccess $previewSiteAccess)
 {
     $request = parent::getForwardRequest($location, $content, $previewSiteAccess);
     // If the preview siteaccess is configured in legacy_mode, we forward to the LegacyKernelController.
     if ($this->configResolver->getParameter('legacy_mode', 'ezsettings', $previewSiteAccess->name)) {
         $request->attributes->set('_controller', 'ezpublish_legacy.controller:indexAction');
     }
     return $request;
 }
All Usage Examples Of eZ\Publish\Core\MVC\Symfony\Controller\Content\PreviewController::getForwardRequest