website/src/Controller/DefaultController.php

28 lines
968 B
PHP
Raw Permalink Normal View History

2021-08-05 13:51:44 +02:00
<?php
namespace App\Controller;
2021-08-05 13:51:44 +02:00
use App\Service\Page;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
2021-08-05 13:51:44 +02:00
use Symfony\Component\HttpFoundation\Response;
2023-06-27 12:10:51 +02:00
use Symfony\Component\Routing\Annotation\Route;
2021-08-05 13:51:44 +02:00
class DefaultController extends AbstractController
2021-08-05 13:51:44 +02:00
{
2023-06-27 12:10:51 +02:00
#[Route('/{slug}', name: 'default', requirements: ['slug' => '[a-zA-Z0-9\/]+'])]
public function DefaultAction(Page $page, string $slug = 'index')
2021-08-05 13:51:44 +02:00
{
$return = $page->getPage($slug);
$response = new Response('', (int)$return['status']);
return $this->render('/page.html.twig', $return, $response);
2021-08-05 13:51:44 +02:00
}
2021-08-06 12:30:00 +02:00
2023-06-27 12:10:51 +02:00
#[Route('/error/{status}', name: 'error', requirements: ['status' => '[0-9]{3}'], priority: 2)]
public function ErrorAction(Page $page, string $status = '404')
2021-08-06 12:30:00 +02:00
{
$return = $page->getPage('error/' . $status);
$response = new Response('', (int)$status);
return $this->render('/page.html.twig', $return, $response);
2021-08-06 12:30:00 +02:00
}
}