Ejemplo n.º 1
0
 /**
  * Returns preview for $content (versionNo to display is held in $content->versionInfo).
  *
  * @param \eZ\Publish\API\Repository\Values\Content\Content $content
  * @param array $params Hash of arbitrary parameters to pass to final view
  * @param \eZ\Publish\Core\MVC\Legacy\Templating\LegacyHelper $legacyHelper
  *
  * @return string
  */
 public function renderPreview(APIContent $content, array $params, LegacyHelper $legacyHelper)
 {
     /** @var \eZ\Publish\Core\MVC\Symfony\SiteAccess $siteAccess */
     $siteAccess = $this->getCurrentRequest()->attributes->get('siteaccess');
     $moduleResult = array();
     // Filling up moduleResult
     $result = $this->getLegacyKernel()->runCallback(function () use($content, $params, $siteAccess, &$moduleResult) {
         $contentViewModule = eZModule::findModule('content');
         $moduleResult = $contentViewModule->run('versionview', array($content->contentInfo->id, $content->getVersionInfo()->versionNo, $content->getVersionInfo()->languageCodes[0]), false, array('site_access' => $siteAccess->name) + $params);
         return ezpEvent::getInstance()->filter('response/output', $moduleResult['content']);
     }, false);
     $legacyHelper->loadDataFromModuleResult($moduleResult);
     return $result;
 }