<?php
namespace App\Controller\Front;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\{Response, Request};
use Symfony\Component\Routing\Annotation\Route;
use Doctrine\ORM\EntityManagerInterface;
use App\Entity\Page\Page;
#[Route('/article', name: 'front.article.')]
class ArticleController extends AbstractController
{
#[Route('/{url}.html', name: 'view')]
#[Route('/{url}', name: 'view.alt')]
public function viewPage(Request $request, string $url, EntityManagerInterface $em): Response
{
$page = $em->getRepository(Page::class)->findOneBy(['url' => $url]);
if (!$page || !$page->getArticle()) {
throw $this->createNotFoundException('Cet article n\'existe pas encore.');
}
return $this->render('front/article/view_page.html.twig', [
'article' => $page->getArticle(),
'page' => $page
]);
}
}