public function injectValidItems(FilterViewParametersEvent $event)
 {
     $view = $event->getView();
     if ($view instanceof BlockView) {
         $event->getParameterBag()->set('valid_items', $this->pageService->getValidBlockItems($view->getBlock()));
     }
 }
 public function injectValidContentInfoItems(FilterViewParametersEvent $event)
 {
     $view = $event->getView();
     if ($view instanceof BlockView && $this->pageService instanceof CoreBundlePageService) {
         $event->getParameterBag()->set('valid_contentinfo_items', $this->pageService->getValidBlockItemsAsContentInfo($view->getBlock()));
     }
 }
 public function injectCustomParameters(FilterViewParametersEvent $event)
 {
     $builderParameters = $event->getBuilderParameters();
     if (isset($builderParameters['params']) && is_array($builderParameters['params'])) {
         $customParameters = $builderParameters['params'];
         $event->getParameterBag()->add($customParameters);
     }
 }
 public function injectEmbedObjectParameters(FilterViewParametersEvent $event)
 {
     $viewType = $event->getView()->getViewType();
     if ($viewType == 'embed' || $viewType == 'embed-inline') {
         $builderParameters = $event->getBuilderParameters();
         if (isset($builderParameters['params']['objectParameters']) && is_array($builderParameters['params']['objectParameters'])) {
             $event->getParameterBag()->set('objectParameters', $builderParameters['params']['objectParameters']);
         }
     }
 }
Beispiel #5
0
 /**
  * Injects the tag ID into the view. Required for BC with legacy controller actions.
  *
  * @param \eZ\Publish\Core\MVC\Symfony\View\Event\FilterViewParametersEvent $event
  */
 public function injectTagId(FilterViewParametersEvent $event)
 {
     $view = $event->getView();
     if (!$view instanceof TagValueView) {
         return;
     }
     $tag = $view->getTag();
     if (!$tag instanceof Tag) {
         return;
     }
     $event->getParameterBag()->set('tagId', $tag->id);
 }
 public function injectValueObjectsIds(View\Event\FilterViewParametersEvent $event)
 {
     $view = $event->getView();
     $parameterBag = $event->getParameterBag();
     if ($view instanceof View\LocationValueView) {
         if (($location = $view->getLocation()) instanceof Location) {
             $parameterBag->set('locationId', $view->getLocation()->id);
         }
     }
     if ($view instanceof View\ContentValueView) {
         $parameterBag->set('contentId', $view->getContent()->id);
     }
     if ($view instanceof View\BlockValueView) {
         $parameterBag->set('blockId', $view->getBlock()->id);
     }
 }
 /**
  * Injects the pager with related content into the view.
  *
  * @param \eZ\Publish\Core\MVC\Symfony\View\Event\FilterViewParametersEvent $event
  */
 public function injectPager(FilterViewParametersEvent $event)
 {
     $view = $event->getView();
     if (!$view instanceof TagView) {
         return;
     }
     if ($this->adapter instanceof TagAdapterInterface) {
         $this->adapter->setTag($view->getTag());
     }
     $pager = new Pagerfanta($this->adapter);
     $pager->setNormalizeOutOfRangePages(true);
     $builderParameters = $event->getBuilderParameters();
     $pager->setMaxPerPage($this->pagerLimit > 0 ? $this->pagerLimit : 10);
     $pager->setCurrentPage($builderParameters['page'] > 0 ? $builderParameters['page'] : 1);
     $event->getParameterBag()->set('related_content', $pager);
 }
 public function injectViewbaseLayout(FilterViewParametersEvent $event)
 {
     $event->getParameterBag()->set('viewbaseLayout', $this->viewbaseLayout);
 }
Beispiel #9
0
 public function injectCustomParameters(FilterViewParametersEvent $event)
 {
     $parameters = $event->getBuilderParameters();
     $event->getParameterBag()->set('noLayout', isset($parameters['layout']) ? !(bool) $parameters['layout'] : false);
 }