/**
  * @Extra\Route("/licenses/projects/create", name="licenses_project_create")
  * @Extra\Method({"GET", "POST"})
  * @Extra\Template
  */
 public function createAction(Request $request)
 {
     $entityManager = $this->container->get('doctrine.orm.default_entity_manager');
     $licenseRepository = $entityManager->getRepository('Doctrine\\Bundle\\LicenseManagerBundle\\Entity\\License');
     $licenses = $licenseRepository->findBy(array(), array('name' => 'ASC'));
     $command = new CreateProject();
     $form = $this->createForm(new CreateProjectType(), $command, array('licenses' => $licenses));
     if ($request->getMethod() === 'POST') {
         $form->bind($request);
         if ($form->isValid()) {
             $createProject = $form->getData();
             $project = new Project($createProject->name);
             foreach ($createProject->url as $url) {
                 $project->addRepository($url);
             }
             $project->setPageMessage($createProject->pageMessage);
             $project->setEmailMessage($createProject->emailMessage);
             $project->setSender($createProject->senderName, $createProject->senderMail);
             $project->setFromLicense($licenseRepository->find($createProject->fromLicense));
             $project->setToLicense($licenseRepository->find($createProject->toLicense));
             $entityManager->persist($project);
             $entityManager->flush();
             $request->getSession()->getFlashBag()->set('success', 'You created a new license switch project. We will evaluate your request and respond timely.');
             $mailer = $this->container->get('doctrine_license_manager.mailer');
             $mailer->sendTextMessage($this->container->getParameter('mailer_sender'), $this->container->getParameter('mailer_admin_email'), 'New License Switch Project registered', sprintf("Hello!\n\nA new project was registered on License Switcher:\n\nName: %s\nURL: %s\nFrom %s To %s\nPage Message:\n\n%s\n\nE-Mail Message:\n\n%s", $createProject->name, implode(", ", $createProject->url), $project->getFromLicense()->getName(), $project->getToLicense()->getName(), $createProject->pageMessage, $createProject->emailMessage));
             return $this->redirect($this->generateUrl('licenses_projects'));
         }
     }
     return array('form' => $form->createView());
 }