src/Controller/SliderDefaultController.php line 18

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Annotation\CmsComponent;
  4. use App\Entity\Slider;
  5. use Doctrine\ORM\EntityManagerInterface;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\HttpFoundation\Response;
  8. use Symfony\Component\Routing\Annotation\Route;
  9. class SliderDefaultController extends AbstractController
  10. {
  11. /**
  12. * @CmsComponent("Embed Slider", active=true, routeName="embed_slider")
  13. */
  14. #[Route(path: '/pcgc-slider', name: 'embed_slider')]
  15. public function embedSlider(EntityManagerInterface $em, mixed $pageId)
  16. {
  17. $slider = $em->getRepository(Slider::class)->findByPageId($pageId);
  18. if (!$slider || $slider->isDeleted() || !$slider->isActive()) {
  19. return new Response('No active Slider assigned to Page');
  20. }
  21. return $this->render('@theme/slider/slider.html.twig', ['slider' => $slider]);
  22. }
  23. }