Example #1
0
 /**
  * @Route("/app/create", name="devs_panel_create_app")
  * @Template()
  */
 public function createAppAction(Request $request)
 {
     if (!$this->getUserLayer()->isUser()) {
         return $this->createAccessDeniedResponse();
     }
     /** @var EntityManager $em */
     $em = $this->getDoctrine()->getManager();
     $client = new OauthClient();
     $client->setUser($this->getUser());
     $defaultScopes = $em->getRepository('EtuCoreApiBundle:OauthScope')->findBy(['isDefault' => true]);
     foreach ($defaultScopes as $defaultScope) {
         $client->addScope($defaultScope);
     }
     $form = $this->createForm($this->get('etu.api.form.client'), $client);
     if ($request->getMethod() == 'POST' && $form->submit($request)->isValid()) {
         $client->generateClientId();
         $client->generateClientSecret();
         $em->persist($client);
         $em->flush();
         $client->upload();
         $this->get('session')->getFlashBag()->set('message', array('type' => 'success', 'message' => 'Votre application a bien été crée'));
         return $this->redirect($this->generateUrl('devs_panel_index'));
     }
     return ['form' => $form->createView()];
 }