RealisateurController.php 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?php
  2. namespace AppBundle\Controller;
  3. use AppBundle\Entity\Realisateur;
  4. use AppBundle\Form\RealisateurType;
  5. use Symfony\Bundle\FrameworkBundle\Controller\Controller;
  6. use Symfony\Component\Routing\Annotation\Route;
  7. use Symfony\Component\HttpFoundation\Request;
  8. class RealisateurController extends Controller
  9. {
  10. /**
  11. * @Route("/real/", name="realisateur_liste")
  12. */
  13. public function indexAction() {
  14. $em = $this->getDoctrine()->getManager();
  15. $repo = $em->getRepository('AppBundle:Realisateur');
  16. $realisateurs = $repo->findAll();
  17. return $this->render('@App/realisateur/liste.html.twig', array(
  18. 'realisateurs' => $realisateurs
  19. ));
  20. }
  21. /**
  22. * @Route("/real/ajouter", name="realisateur_ajouter")
  23. */
  24. public function ajouterAction(Request $request)
  25. {
  26. $realisateur = new Realisateur();
  27. $form = $this->createForm(RealisateurType::class, $realisateur);
  28. $form->handleRequest($request);
  29. if ($form->isSubmitted() && $form->isValid())
  30. {
  31. $realisateur = $form->getData();
  32. $em = $this->getDoctrine()->getManager();
  33. $em->persist($realisateur);
  34. $em->flush();
  35. $this->addFlash('success', 'Le réalisateur a été ajouté');
  36. return $this->redirectToRoute('realisateur_liste');
  37. }
  38. return $this->render('@App/realisateur/ajouter.html.twig', array(
  39. 'form' => $form->createView(),
  40. 'realisateur' => $realisateur
  41. ));
  42. }
  43. /**
  44. * @Route("/real/modifier/{id}", name="realisateur_modifier")
  45. */
  46. public function modifierAction(Request $request, $id)
  47. {
  48. $em = $this->getDoctrine()->getManager();
  49. $repo = $em->getRepository('AppBundle:Realisateur');
  50. $realisateur = $repo->find($id);
  51. $form = $this->createForm(RealisateurType::class, $realisateur);
  52. $form->handleRequest($request);
  53. if ($form->isSubmitted() && $form->isValid())
  54. {
  55. $realisateur = $form->getData();
  56. $em->flush();
  57. $this->addFlash('success', 'Le réalisateur a été modifié');
  58. return $this->redirectToRoute('realisateur_liste');
  59. }
  60. return $this->render('@App/realisateur/modifier.html.twig', array(
  61. 'form' => $form->createView()
  62. ));
  63. }
  64. /**
  65. * @Route("/real/supprimer/{id}", name="realisateur_supprimer")
  66. */
  67. public function supprimerAction($id)
  68. {
  69. $em = $this->getDoctrine()->getManager();
  70. $repo = $em->getRepository('AppBundle:Realisateur');
  71. $realisateur = $repo->find($id);
  72. $form = $this->get('form.factory')->create();
  73. if ($form->isSubmitted() && $form->isValid())
  74. {
  75. $em->remove($realisateur);
  76. $em->flush();
  77. $this->addFlash('success', "Le réalisateur \"$realisateur\" a bien été supprimé.");
  78. return $this->redirectToRoute('realisateur_liste');
  79. }
  80. return $this->render('@App/realisateur/supprimer.html.twig', array(
  81. 'realisateur' => $realisateur,
  82. 'form' => $form->createView()
  83. ));
  84. }
  85. }