/** * View a single content page * * This Controller action is being routed to from either our custom ContentRouter, * or the ExceptionController. * @see Opifer\SiteBundle\Router\ContentRouter * * @param Request $request * @param ContentInterface $content * @param int $statusCode * * @return Response * * @throws \Exception */ public function viewAction(Request $request, ContentInterface $content, $statusCode = 200) { $version = $request->query->get('_version'); $response = new Response(); /** @var BlockManager $manager */ $manager = $this->get('opifer.content.block_manager'); $block = $content->getBlock(); $response->setStatusCode($statusCode); if (null !== $version && $this->isGranted('ROLE_ADMIN')) { $block = $content->getBlock(); $this->getDoctrine()->getManager()->getFilters()->disable('draftversion'); $manager->revert($block, $version); } /** @var BlockServiceInterface $service */ $service = $manager->getService($block); $service->setView($content->getTemplate()->getView()); return $service->execute($block); }
/** * {@inheritDoc} */ protected function getMainBlock() { return $this->content->getBlock(); }
/** * {@inheritDoc} */ public function getMainBlock() { return $this->content->getBlock(); }