/** * @Route("/groups/new", name="new_group") */ public function createGroup(Request $request) { $group = new Groups(); $form = $this->createForm(GroupsType::class, $group); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { $em = $this->getDoctrine()->getManager(); $em->persist($group); // Add yourself to group $currentuser = $this->get('security.token_storage')->getToken()->getUser(); $usergroup = new UserGroup(); $usergroup->setGroup($group); $usergroup->setUser($currentuser); $usergroup->setAdminAccess(true); $keyProtect = $this->get('appbundle.key_protect'); // Generate a key for this group $usergroup->setGroupKey($keyProtect->newEncryptedGroupKeyForCurrentUser()); $em->persist($usergroup); $em->flush(); return $this->redirectToRoute('groups'); } return $this->render('AppBundle:Default:newgroup.html.twig', ['form' => $form->createView()]); }