/**
  * @param GetResponseForControllerResultEvent $event
  */
 public function onKernelView(GetResponseForControllerResultEvent $event)
 {
     $request = $event->getRequest();
     $nodeTranslation = $request->attributes->get('_nodeTranslation');
     if ($nodeTranslation) {
         $entity = $request->attributes->get('_entity');
         $url = $request->attributes->get('url');
         $nodeMenu = $request->attributes->get('_nodeMenu');
         $parameters = $request->attributes->get('_renderContext');
         if ($request->get('preview') == true) {
             $version = $request->get('version');
             if (!empty($version) && is_numeric($version)) {
                 $nodeVersion = $this->em->getRepository('KunstmaanNodeBundle:NodeVersion')->find($version);
                 if (!is_null($nodeVersion)) {
                     $entity = $nodeVersion->getRef($this->em);
                 }
             }
         }
         $renderContext = array('nodetranslation' => $nodeTranslation, 'slug' => $url, 'page' => $entity, 'resource' => $entity, 'nodemenu' => $nodeMenu);
         if (is_array($parameters) || $parameters instanceof \ArrayObject) {
             $parameters = array_merge($renderContext, (array) $parameters);
         } else {
             $parameters = $renderContext;
         }
         // Sent the response here, another option is to let the symfony kernel.view listener handle it
         $event->setResponse($this->templating->renderResponse($entity->getDefaultView(), $parameters));
     }
 }
 protected function renderResponse($contentTemplate, $params)
 {
     if ($this->viewHandler) {
         $view = new View($params);
         $view->setTemplate($contentTemplate);
         return $this->viewHandler->handle($view);
     }
     return $this->templating->renderResponse($contentTemplate, $params);
 }
 /**
  * @param GetResponseForControllerResultEvent $event
  */
 public function onKernelView(GetResponseForControllerResultEvent $event)
 {
     $request = $event->getRequest();
     $nodeTranslation = $request->attributes->get('_nodeTranslation');
     if ($nodeTranslation) {
         $entity = $request->attributes->get('_entity');
         $url = $request->attributes->get('url');
         $nodeMenu = $request->attributes->get('_nodeMenu');
         $parameters = $request->attributes->get('_renderContext');
         $renderContext = array('nodetranslation' => $nodeTranslation, 'slug' => $url, 'page' => $entity, 'resource' => $entity, 'nodemenu' => $nodeMenu);
         if (is_array($parameters) || $parameters instanceof \ArrayObject) {
             $parameters = array_merge($renderContext, (array) $parameters);
         } else {
             $parameters = $renderContext;
         }
         // Sent the response here, another option is to let the symfony kernel.view listener handle it
         $event->setResponse($this->templating->renderResponse($entity->getDefaultView(), $parameters));
     }
 }
 /**
  *
  * @param Request $request
  *
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function detailAction(Request $request)
 {
     $event = $this->eventManager->findByIdAndLocale($request->get('id'), 'de', true);
     if (!$event) {
         throw new NotFoundHttpException(404);
     }
     $filter['lat'] = $event->getLatitude();
     $filter['long'] = $event->getLongitude();
     $filter['area'] = 100;
     $requestData = $this->requestAnalyzerResolver->resolve($this->requestAnalyzer);
     $resolverData = $this->parameterResolver->resolve(array(), $this->requestAnalyzer, null, false);
     $response = $this->templating->renderResponse('SuluEventBundle:templates:detail.html.twig', array_merge(array('event' => $event, 'urls' => isset($resolverData['urls']) ? $resolverData['urls'] : array()), $requestData));
     $response->setMaxAge($this->cacheMaxAge);
     $response->setSharedMaxAge($this->cacheSharedMaxAge);
     return $response;
 }
 /**
  * Launch the background process related to the mass edit action
  *
  * @AclAncestor("pim_enrich_mass_edit")
  *
  * @param Request $request
  * @param string  $operationAlias
  *
  * @throws NotFoundResourceException
  *
  * @return Response
  */
 public function performAction(Request $request, $operationAlias)
 {
     $form = $this->massEditFormResolver->getConfigurationForm($operationAlias);
     $itemsCount = $request->get('itemsCount');
     $configureTemplate = $this->getPerformOperationTemplate($operationAlias);
     $form->remove('operationAlias');
     $form->submit($request);
     $queryParams = $this->getQueryParams($request);
     if ($form->isValid()) {
         $pimFilters = $this->gridFilterAdapter->adapt($request);
         $operation = $form->getData();
         $operation->setFilters($pimFilters);
         $this->operationLauncher->launch($operation);
         $request->getSession()->getFlashBag()->add('success', new Message(sprintf('pim_enrich.mass_edit_action.%s.launched_flash', $operationAlias)));
         $redirectRoute = $this->getPerformOperationRedirectRoute();
         return new RedirectResponse($this->router->generate($redirectRoute, ['dataLocale' => $queryParams['dataLocale']]));
     }
     return $this->templating->renderResponse($configureTemplate, ['form' => $form->createView(), 'operationAlias' => $operationAlias, 'itemsCount' => $itemsCount, 'queryParams' => $queryParams]);
 }
 /**
  * Renders a view.
  *
  * @param string   $view       The view name
  * @param array    $parameters An array of parameters to pass to the view
  * @param Response $response   A response instance
  *
  * @return Response A Response instance
  */
 public function render($view, array $parameters = [], Response $response = null)
 {
     return $this->templating->renderResponse($view, $parameters, $response);
 }
 /**
  * History of a group
  *
  * TODO : find a way to use param converter with interfaces
  *
  * @param Group $group
  *
  * @AclAncestor("pim_enrich_group_history")
  *
  * @return Response
  */
 public function historyAction(Group $group)
 {
     return $this->templating->renderResponse('PimEnrichBundle:Group:Tab/_history.html.twig', ['group' => $group]);
 }
 public function listAction($page)
 {
     return $this->templating->renderResponse('scene/standalone/list.html.twig', ['scenes' => $this->getScenes($page)]);
 }