src/CMSBundle/Controller/FrontEnd/DynamicPageController.php line 24

Open in your IDE?
  1. <?php
  2. namespace App\CMSBundle\Controller\FrontEnd;
  3. use App\BaseBundle\Controller\AbstractController;
  4. use App\CMSBundle\Entity\DynamicPage;
  5. use App\CMSBundle\Repository\DynamicPageRepository;
  6. use PN\SeoBundle\Service\SeoService;
  7. use Symfony\Component\HttpFoundation\Request;
  8. use Symfony\Component\HttpFoundation\Response;
  9. use Symfony\Component\Routing\Annotation\Route;
  10. /**
  11. * DynamicPage controller.
  12. *
  13. * @Route("page")
  14. */
  15. class DynamicPageController extends AbstractController
  16. {
  17. /**
  18. * @Route("/terms-condition", name="fe_terms_condition", methods={"GET"})
  19. */
  20. public function terms(DynamicPageRepository $dynamicPageRepository): Response
  21. {
  22. $page = $dynamicPageRepository->find(1);
  23. if (!$page) {
  24. throw $this->createNotFoundException();
  25. }
  26. return $this->render('cms/frontEnd/dynamicPage/page.html.twig', [
  27. 'page' => $page,
  28. ]);
  29. }
  30. /**
  31. * @Route("/page/{slug}", name="fe_dynamic_page_show", methods={"GET"})
  32. */
  33. public function show(Request $request, SeoService $seoService, string $slug): Response
  34. {
  35. $page = $seoService->getSlug($request, $slug, new DynamicPage());
  36. if ($page instanceof RedirectResponse) {
  37. return $page;
  38. }
  39. if (!$page) {
  40. throw $this->createNotFoundException();
  41. }
  42. return $this->render('cms/frontEnd/dynamicPage/page.html.twig', [
  43. 'page' => $page,
  44. ]);
  45. }
  46. }