<?php
namespace App\Controller;
use App\Annotation\CmsComponent;
use App\Entity\Slider;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class SliderDefaultController extends AbstractController
{
/**
* @CmsComponent("Embed Slider", active=true, routeName="embed_slider")
*/
#[Route(path: '/cms-slider', name: 'embed_slider')]
public function embedSlider(EntityManagerInterface $em, mixed $pageId)
{
$slider = $em->getRepository(Slider::class)->findByPageId($pageId);
if (!$slider || $slider->isDeleted() || !$slider->isActive()) {
return new Response('No active Slider assigned to Page');
}
return $this->render('@theme/slider/slider.html.twig', ['slider' => $slider]);
}
}