diff --git a/src/Controller/UserController.php b/src/Controller/UserController.php index 7596ece..66c32d1 100644 --- a/src/Controller/UserController.php +++ b/src/Controller/UserController.php @@ -3,9 +3,7 @@ namespace App\Controller; use App\Entity\User; -use App\Entity\UsersOrganizations; -use App\Form\EditUserForm; -use App\Form\NewUserForm; +use App\Form\UserForm; use App\Service\UserOrganizationService; use App\Service\UserService; use Doctrine\ORM\EntityManagerInterface; @@ -71,7 +69,7 @@ class UserController extends AbstractController #[Route('/new', name: 'new', methods: ['GET', 'POST'])] public function new(Request $request): Response { - $form = $this->createForm(NewUserForm::class); + $form = $this->createForm(UserForm::class); $form->handleRequest($request); @@ -100,7 +98,7 @@ class UserController extends AbstractController /** * GET /user/{id}/edit - Show form to edit user */ - #[Route('/{id}/edit', name: 'edit', requirements: ['id' => '\d+'], methods: ['GET', 'POST'])] + #[Route('/{id}/edit', name: 'edit', requirements: ['id' => '\d+'], methods: ['GET', 'PUT', 'POST'])] public function edit(int $id, EntityManagerInterface $entityManager, Request $request): Response { //Handle access control @@ -115,7 +113,7 @@ class UserController extends AbstractController } //Create form for editing user - $form = $this->createForm(EditUserForm::class, $user); + $form = $this->createForm(UserForm::class, $user); //Handle form submission $form->handleRequest($request); @@ -133,27 +131,7 @@ class UserController extends AbstractController 'user' => $user, ]); } -// -// /** -// * PUT/PATCH /user/{id} - Update user -// */ -// #[Route('/{id}', name: 'update', methods: ['PUT', 'PATCH'], requirements: ['id' => '\d+'])] -// public function update(int $id, Request $request, EntityManagerInterface $entityManager): Response -// { -// if (!$this->isGranted('ROLE_SUDALYS_ADMIN')) { -// throw $this->createAccessDeniedException('Access denied'); -// } -// -// $user = $entityManager->getRepository(User::class)->find($id); -// if (!$user) { -// throw $this->createNotFoundException(self::NOT_FOUND); -// } -// -// // Handle user update logic -// // Validate, persist, flush, redirect -// -// return $this->redirectToRoute('user_show', ['id' => $id]); -// } + // // /** // * DELETE /user/{id} - Delete user diff --git a/src/Form/EditUserForm.php b/src/Form/EditUserForm.php deleted file mode 100644 index 1bcbf9f..0000000 --- a/src/Form/EditUserForm.php +++ /dev/null @@ -1,40 +0,0 @@ -add('name', TextType::class, [ - 'label' => 'Prénom*', - 'required' => true, - ]) - ->add('surname', TextType::class, [ - 'label' => 'Nom*', - 'required' => true, - ]) - ->add('email', EmailType::class, [ - 'label' => 'Email*', - 'required' => true, - ]) - ->add('phoneNumber', TextType::class, [ - 'label' => 'Numéro de téléphone', - 'required' => false, - ]); - } - - public function configureOptions(\Symfony\Component\OptionsResolver\OptionsResolver $resolver): void - { - $resolver->setDefaults([ - 'data_class' => \App\Entity\User::class, - ]); - } - - -} diff --git a/src/Form/NewUserForm.php b/src/Form/UserForm.php similarity index 96% rename from src/Form/NewUserForm.php rename to src/Form/UserForm.php index ba9b95b..5df2589 100644 --- a/src/Form/NewUserForm.php +++ b/src/Form/UserForm.php @@ -9,7 +9,7 @@ use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; -class NewUserForm extends AbstractType +class UserForm extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options): void { diff --git a/templates/user/edit.html.twig b/templates/user/edit.html.twig index 862da2d..464438d 100644 --- a/templates/user/edit.html.twig +++ b/templates/user/edit.html.twig @@ -1,14 +1,11 @@ {% extends 'base.html.twig' %} - {% block body %}

Modifier l'utilisateur

-
- {{ form_start(form) }} - {{ form_widget(form) }} - - {{ form_end(form) }} -
+ {{ form_start(form, {'action': path('user_edit', {'id': user.id}), 'method': 'PUT'}) }} + {{ form_widget(form) }} + + {{ form_end(form) }}
-{% endblock %} +{% endblock %} \ No newline at end of file