deactivate organization

This commit is contained in:
Charles 2025-08-06 14:48:41 +02:00
parent 993188ac4f
commit 371c511ecf
2 changed files with 24 additions and 0 deletions

View File

@ -178,5 +178,25 @@ class OrganizationController extends AbstractController
]);
}
#[Route('/deactivate/{id}', name: 'deactivate', requirements: ['id' => '\d+'], methods: ['GET', 'POST'])]
public function deactivate(Request $request): Response
{
$this->denyAccessUnlessGranted('ROLE_SUPER_ADMIN');
$id = $request->attributes->get('id');
$organization = $this->entityManager->getRepository(Organizations::class)->find($id);
if (!$organization) {
throw $this->createNotFoundException(self::NOT_FOUND);
}
if ($organization->isActive() === false) {
$this->addFlash('error', 'Organization is already deactivated');
return $this->redirectToRoute('organization_index');
}
$organization->setIsActive(false);
$this->entityManager->persist($organization);
$this->entityManager->flush();
$this->addFlash('success', 'Organization deactivated successfully');
return $this->redirectToRoute('organization_index');
}
}

View File

@ -10,6 +10,10 @@
{% endif %}
{{ organization.name|title }} - Dashboard</h1>
{% if is_granted("ROLE_SUPER_ADMIN") %}
<a href="{{ path('organization_edit', {'id': organization.id}) }}" class="btn btn-primary">Gérer l'organisation</a>
<a href="{{ path('organization_deactivate', {'id': organization.id}) }}"
class="btn btn-danger">Désactiver l'organisation</a>
{% elseif is_granted("ROLE_ADMIN") %}
<a href="{{ path('organization_edit', {'id': organization.id}) }}" class="btn btn-primary">Gérer mon
organisation</a>
{% endif %}