This commit is contained in:
2025-05-20 20:38:51 +01:00
parent 7a051cf7ad
commit 6a087aae48
6 changed files with 105 additions and 23 deletions

View File

@@ -11,10 +11,11 @@ use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Security\Http\Attribute\IsGranted;
use function Symfony\Component\HttpFoundation\Response;
class GuiController extends AbstractController {
#[Route('/')]
#[Route('/', name: 'index')]
#[Template('/index.html.twig')]
public function index(): array {
return [
@@ -37,6 +38,7 @@ class GuiController extends AbstractController {
];
}
#[IsGranted('ROLE_EDITOR')]
#[Route('/notes/write')]
#[Template('/write_note.html.twig')]
public function writeNote(

View File

@@ -0,0 +1,31 @@
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Attribute\Route;
use Symfony\Component\Security\Http\Authentication\AuthenticationUtils;
class SecurityController extends AbstractController
{
#[Route(path: '/login', name: 'login')]
public function login(AuthenticationUtils $authenticationUtils): Response
{
$error = $authenticationUtils->getLastAuthenticationError();
$lastUsername = $authenticationUtils->getLastUsername();
return $this->render('security/login.html.twig', [
'title' => 'Log in',
'description' => 'Log in to Joe Carstairs\' personal website',
'lastUsername' => $lastUsername,
'error' => $error,
]);
}
#[Route(path: '/logout', name: 'logout')]
public function logout(): void
{
throw new \LogicException('This method can be blank - it will be intercepted by the logout key on your firewall.');
}
}