Activate users

This commit is contained in:
Charles 2025-08-29 09:22:15 +02:00
parent 1e33782f75
commit 5a7be977ba
3 changed files with 27 additions and 1 deletions

View File

@ -215,6 +215,28 @@ class UserController extends AbstractController
throw $this->createAccessDeniedException(self::ACCESS_DENIED);
}
#[Route('/activate/{id}', name: 'activate', methods: ['GET', 'POST'])]
public function activate(int $id): Response
{
$this->denyAccessUnlessGranted('ROLE_ADMIN');
$actingUser = $this->userService->getUserByIdentifier($this->getUser()->getUserIdentifier());
if ($this->userService->hasAccessTo($actingUser, true)) {
$user = $this->entityManager->getRepository(User::class)->find($id);
if (!$user) {
throw $this->createNotFoundException(self::NOT_FOUND);
}
$user->setIsActive(true);
$user->setModifiedAt(new \DateTimeImmutable('now'));
$this->entityManager->persist($user);
$this->entityManager->flush();
$this->actionService->createAction("Activate user", $actingUser, null, $user->getUserIdentifier());
return $this->redirectToRoute('user_index');
}
throw $this->createAccessDeniedException(self::ACCESS_DENIED);
}
#[Route('/organization/deactivate/{id}', name: 'deactivate_organization', methods: ['GET', 'POST'])]
public function deactivateUserInOrganization(int $id, Request $request): Response
{

View File

@ -12,7 +12,11 @@
{% if is_granted("ROLE_SUPER_ADMIN") %}
<a href="{{ path('user_delete', {'id': user.id}) }}" class="btn btn-danger">Supprimer</a>
{% endif %}
{% if user.active %}
<a href="{{ path('user_deactivate', {'id': user.id}) }}" class="btn btn-danger">Désactiver</a>
{% else %}
<a href="{{ path('user_activate', {'id': user.id}) }}" class="btn btn-success">Activer</a>
{% endif %}
</div>
</div>

View File

@ -20,7 +20,7 @@
<form method="post" action="{{ path('user_activate_organization', {'id': user.id}) }}"
onsubmit="return confirm('Vous allez activer cette utilisateur dans votre organisation, êtes vous sûre?');">
<input type="hidden" name="organizationId" value="{{ organizationId }}">
<button class="btn btn-primary" type="submit">Réactiver</button>
<button class="btn btn-primary" type="submit">Activer</button>
</form>
{% endif %}
{% endif %}