svg
This commit is contained in:
@@ -45,6 +45,7 @@ class GroupController extends AbstractController
|
||||
$group = new Group();
|
||||
$group->addUser($this->getUser());
|
||||
$group->setStatus(Group::ACTIVE);
|
||||
$group->setOpen(true);
|
||||
|
||||
$this->denyAccessUnlessGranted(GroupVoter::SUBMIT, $group);
|
||||
|
||||
@@ -130,6 +131,25 @@ class GroupController extends AbstractController
|
||||
return $this->redirectToRoute($isAdmin ? 'app_admin_group' : 'app_user_group_view', ['id' => $group->getId()]);
|
||||
}
|
||||
|
||||
#[Route('/admin/group/subscribe/{id}', name: 'app_admin_group_subscribe')]
|
||||
#[Route('/user/group/subscribe/{id}', name: 'app_user_group_subscribe')]
|
||||
public function subscribe(int $id, Request $request, GroupRepository $groupRepository, EntityManagerInterface $em): Response
|
||||
{
|
||||
$group = $groupRepository->find($id);
|
||||
if (!$group) {
|
||||
throw new NotFoundHttpException('La ressource demandée est introuvable.');
|
||||
}
|
||||
|
||||
$this->denyAccessUnlessGranted(GroupVoter::CANSUBSCRIBE, $group);
|
||||
|
||||
$group->addUser($this->getUser());
|
||||
$em->flush();
|
||||
|
||||
$isAdmin = str_starts_with($request->attributes->get('_route'), 'app_admin');
|
||||
|
||||
return $this->redirectToRoute($isAdmin ? 'app_admin_group' : 'app_user_group_view', ['id' => $group->getId()]);
|
||||
}
|
||||
|
||||
#[Route('/admin/group/delete/{id}', name: 'app_admin_group_delete')]
|
||||
#[Route('/user/group/delete/{id}', name: 'app_user_group_delete')]
|
||||
public function delete(int $id, Request $request, GroupRepository $groupRepository, EntityManagerInterface $em): Response
|
||||
@@ -174,6 +194,7 @@ class GroupController extends AbstractController
|
||||
'routecancel' => $isAdmin ? 'app_admin_group' : 'app_home',
|
||||
'routedelete' => $isAdmin ? 'app_admin_group_delete' : 'app_user_group_delete',
|
||||
'routemove' => $isAdmin ? 'app_admin_group_move' : 'app_user_group_move',
|
||||
'routesubscribe' => $isAdmin ? 'app_admin_group_subscribe' : 'app_user_group_subscribe',
|
||||
'group' => $group,
|
||||
]);
|
||||
}
|
||||
|
Reference in New Issue
Block a user