findAll(); return $this->render('admin/genre/index.html.twig', [ 'genres' => $genres, ]); } /* * Supprimer un genre */ #[Route('/admin/genre/{id}/delete', name: 'app_admin_genre_delete', requirements: ['id' => Requirement::UUID_V7], methods: ['GET'])] public function delete(?Genre $genre, EntityManagerInterface $manager): Response { $manager->remove($genre); $manager->flush(); $this->addFlash('success', 'Genre supprimé avec succès.'); return $this->redirectToRoute('app_admin_genre'); } /* * Modifier un genre */ #[Route('/admin/genre/{id}/edit', name: 'app_admin_genre_edit', requirements: ['id' => Requirement::UUID_V7], methods: ['GET', 'POST'])] public function edit(?Genre $genre, Request $request, EntityManagerInterface $manager): Response { $form = $this->createForm(GenreType::class, $genre); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { // Aucun slug n'a été proposé par l'utilisateur if (!$form->get('slug')->getData()) { $slugger = new AsciiSlugger('fr_FR'); $genre->setSlug($slugger->slug(strtolower($genre->getGenre()))); } $manager->persist($genre); $manager->flush(); $this->addFlash('success', 'Genre ajouté à la base de données avec succès.'); return $this->redirectToRoute('app_admin_genre'); } return $this->render('admin/genre/edit.html.twig', [ 'form' => $form, 'genre' => $genre, ]); } /* * Ajouter un genre */ #[Route('/admin/genre/add', name: 'app_admin_genre_add', methods: ['GET', 'POST'])] public function add(Request $request, EntityManagerInterface $manager): Response { $genre = new Genre(); $form = $this->createForm(GenreType::class, $genre); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { // Aucun slug n'a été proposé par l'utilisateur if (!$form->get('slug')->getData()) { $slugger = new AsciiSlugger('fr_FR'); $genre->setSlug($slugger->slug(strtolower($genre->getGenre()))); } $manager->persist($genre); $manager->flush(); $this->addFlash('success', 'Genre ajouté à la base de données avec succès.'); return $this->redirectToRoute('app_admin_genre'); } return $this->render('admin/genre/edit.html.twig', [ 'form' => $form, ]); } }