Merge pull request #9 in WFCC/cc34 from 9-instructeur-pour-creer-modifier to master

* commit '5f92c570093323a6a1e85a33fa5e2df7d5879c9f':
  Modification du IsGranted pour la necessite d'authentification pour la creation, suppression et modification d'ateliers, pour la question 9
This commit is contained in:
Serra Aymeric 2023-02-08 17:57:57 +01:00
commit 024bbc5d55
2 changed files with 8 additions and 4 deletions

View File

@ -72,4 +72,7 @@ symfony console make:registration-form
symfony console make:entity symfony console make:entity
symfony console make:migration symfony console make:migration
symfony console d:f:l symfony console d:f:l
``` ```
### Question 9
Pas de commandes, juste du code dans AtelierController

View File

@ -12,12 +12,10 @@ use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route; use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Security\Http\Attribute\IsGranted; use Symfony\Component\Security\Http\Attribute\IsGranted;
#[IsGranted('ROLE_INSTRUCTOR')]
#[Route('/atelier')] #[Route('/atelier')]
class AtelierController extends AbstractController class AtelierController extends AbstractController
{ {
#[Route('/', name: 'app_atelier_index', methods: ['GET'])] #[Route('/', name: 'app_atelier_index', methods: ['GET'])]
public function index(AtelierRepository $atelierRepository, MarkdownAtelier $markdown): Response public function index(AtelierRepository $atelierRepository, MarkdownAtelier $markdown): Response
{ {
return $this->render('atelier/index.html.twig', [ return $this->render('atelier/index.html.twig', [
@ -25,6 +23,7 @@ class AtelierController extends AbstractController
]); ]);
} }
#[IsGranted('ROLE_INSTRUCTOR')]
#[Route('/new', name: 'app_atelier_new', methods: ['GET', 'POST'])] #[Route('/new', name: 'app_atelier_new', methods: ['GET', 'POST'])]
public function new(Request $request, AtelierRepository $atelierRepository): Response public function new(Request $request, AtelierRepository $atelierRepository): Response
{ {
@ -53,6 +52,7 @@ class AtelierController extends AbstractController
]); ]);
} }
#[IsGranted('ROLE_INSTRUCTOR')]
#[Route('/{id}/edit', name: 'app_atelier_edit', methods: ['GET', 'POST'])] #[Route('/{id}/edit', name: 'app_atelier_edit', methods: ['GET', 'POST'])]
public function edit(Request $request, Atelier $atelier, AtelierRepository $atelierRepository): Response public function edit(Request $request, Atelier $atelier, AtelierRepository $atelierRepository): Response
{ {
@ -71,10 +71,11 @@ class AtelierController extends AbstractController
]); ]);
} }
#[IsGranted('ROLE_INSTRUCTOR')]
#[Route('/{id}', name: 'app_atelier_delete', methods: ['POST'])] #[Route('/{id}', name: 'app_atelier_delete', methods: ['POST'])]
public function delete(Request $request, Atelier $atelier, AtelierRepository $atelierRepository): Response public function delete(Request $request, Atelier $atelier, AtelierRepository $atelierRepository): Response
{ {
if ($this->isCsrfTokenValid('delete'.$atelier->getId(), $request->request->get('_token'))) { if ($this->isCsrfTokenValid('delete' . $atelier->getId(), $request->request->get('_token'))) {
$atelierRepository->remove($atelier, true); $atelierRepository->remove($atelier, true);
} }