ProfilController.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. namespace App\Controller;
  3. use Doctrine\ORM\EntityManagerInterface;
  4. use App\Form\UserEditProfilType;
  5. use App\Form\ProfileType;
  6. use App\Repository\ProfileRepository;
  7. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  8. use Symfony\Component\HttpFoundation\Request;
  9. use Symfony\Component\HttpFoundation\Response;
  10. use Symfony\Component\Routing\Annotation\Route;
  11. class ProfilController extends AbstractController
  12. {
  13. /**
  14. * @Route("/profil/", name="user_profil")
  15. */
  16. public function monProfilAction(Request $request, EntityManagerInterface $em)
  17. {
  18. $user = $this->getUser();
  19. $form = $this->createForm(UserEditProfilType::class , $user);
  20. $form->handleRequest($request);
  21. if ($form->isSubmitted() && $form->isValid())
  22. {
  23. $user = $form->getData();
  24. $em->flush();
  25. $this->addFlash('success', "Votre profil a été modifié");
  26. }
  27. return $this->renderForm('profil/monprofil.html.twig', array (
  28. 'form' => $form
  29. ));
  30. }
  31. /**
  32. * @Route("/preferences/", name="user_preferences")
  33. */
  34. public function mesPreferencesAction(Request $request, EntityManagerInterface $em, ProfileRepository $profileRepo): Response
  35. {
  36. $profile = $profileRepo->findByUser($this->getUser());
  37. $form = $this->createForm(ProfileType::class , $profile);
  38. $form->handleRequest($request);
  39. if ($form->isSubmitted() && $form->isValid())
  40. {
  41. $profile = $form->getData();
  42. $em->flush();
  43. $this->addFlash('success', "Les préférences ont été modifiées");
  44. }
  45. return $this->renderForm('profil/mespreferences.html.twig', [
  46. 'form' => $form
  47. ]);
  48. }
  49. }