/** * @Route("/create", name="freedom_group_create") * @Template() */ public function createAction() { $group = new Groups(); $form = $this->createForm(new GroupsCreateType(), $group); $request = $this->get('request'); if ($request->getMethod() == 'POST') { $form->handleRequest($request); if ($form->isValid()) { $group->setUser($this->getUser()); $userbelonggroup = new Userbelonggroup(); $userbelonggroup->setUser($this->getUser()); $userbelonggroup->setRole(1); $userbelonggroup->setAccepted(true); $userbelonggroup->setGroup($group); $group->addUserbelonggroups($userbelonggroup); $em = $this->getDoctrine()->getManager(); $em->persist($group); $em->flush(); return $this->redirect($this->generateUrl('freedom_group_details', array('id' => $group->getId()))); } } return array('form' => $form->createView()); }
/** * Delete a Belong Group entity. * * @View(statusCode=200) * * @param Request $request * @param $entity * @internal param $id * * @return Response */ public function deleteUserbelonggroupsAction(Request $request, Groups $group, Userbelonggroup $entity) { $user = $this->getUser(); if ($user == $entity->getUser() and $entity->getRole() != 1 or $user == $group->getUser()) { try { $em = $this->getDoctrine()->getManager(); $em->remove($entity); $em->flush(); return array('type' => 'success', 'alert' => 'alert-success', 'message' => 'You don\'t belong this group anymore !'); } catch (\Exception $e) { // return FOSView::create($e->getMessage(), Codes::HTTP_INTERNAL_SERVER_ERROR); return array('type' => 'error'); } } else { throw $this->createNotFoundException('No able to modify : ' . $entity); } }