/**
  * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  *
  * @param ObjectManager $manager Object manager
  *
  * @return null
  */
 public function load(ObjectManager $manager)
 {
     $lorem = 'Lorem ipsum dolor amet consectetur adipiscing elit sed eiusmod tempor incididunt labore dolore magna aliqua enim ad minim veniam quis nostrud exercitation ullamco laboris nisi aliquip ex ea commodo consequat';
     $nameList = explode(' ', $lorem);
     $groupCpt = 1;
     for ($i = 1; $i <= 12; $i++) {
         $team = new Team();
         $teamName = $nameList[array_rand($nameList)];
         $team->setName($teamName);
         $team->setScore(666);
         $team->setGroup($this->getReference('group' . $groupCpt));
         $manager->persist($team);
         $this->addReference('team' . $i, $team);
         if ($i % 3 == 0) {
             $groupCpt++;
         }
     }
     $manager->flush();
 }
 /**
  * @Route("/ajax/registration", name="team_ajax_registration")
  */
 public function ajaxRegistrationAction(Request $request)
 {
     if ($request->isXmlHttpRequest()) {
         $user = $this->getUser();
         if (!empty($user) && empty($user->getTeam())) {
             $errors = $this->validateTeam($request->get('name'), $request->get('players'), $request->get('dispo'));
             if (empty($errors)) {
                 try {
                     $em = $this->getDoctrine()->getManager();
                     $team = new Team();
                     $team->setName($request->get('name'));
                     $team->setInscriptionDate(new \DateTime());
                     $team->setPaid(false);
                     $team->setValid(false);
                     $team->setAvailable($request->get('dispo'));
                     $players = json_decode($request->get('players'), true);
                     foreach ($players as $k => $v) {
                         $player = new Player();
                         $class = $em->getRepository('TeamBundle:Classe')->findOneBy(array('id' => $v['class']));
                         $player->setPseudo($v['name']);
                         $player->setLevel($v['level']);
                         $player->setClass($class);
                         $player->setIsRemplacant(false);
                         $player->setTeam($team);
                         $em->persist($player);
                         if (!empty($v['remplacant']['name']) && !empty($v['remplacant']['level'])) {
                             $player = new Player();
                             $player->setPseudo($v['remplacant']['name']);
                             $player->setLevel($v['remplacant']['level']);
                             $player->setClass($class);
                             $player->setIsRemplacant(true);
                             $player->setTeam($team);
                             $em->persist($player);
                         }
                     }
                     $user->setTeam($team);
                     // On set la team de l'utilisateur si tout est ok
                     $em->persist($team);
                     $em->flush();
                     $response = new Response(json_encode(array('status' => 'ok')));
                     $this->addFlash('success', 'Votre équipe a bien été inscrite !');
                 } catch (\Exception $e) {
                     $response = new Response(json_encode(array('status' => 'ko', 'message' => 'Une erreur inconnue s\'est produite', 'debug' => $e->getMessage())));
                 }
             } else {
                 $response = new Response(json_encode(array('status' => 'ko', 'message' => $errors)));
             }
         } else {
             $response = new Response(json_encode(array('status' => 'ko', 'message' => 'Vous possédez déjà une équipe ou vous n\'êtes pas connecté')));
         }
         $response->headers->set('Content-Type', 'application/json');
         return $response;
     }
     $response = new Response(json_encode(array('status' => 'ko', 'message' => 'Accès non autorisé', 'debug' => 'Bad request')));
     $response->headers->set('Content-Type', 'application/json');
     return $response;
 }
 /**
  * @param Team $object Team object
  *
  * @return string
  */
 public function toString($object)
 {
     return $object instanceof Team ? 'Team ' . $object->getName() : 'Team';
 }
 /**
  * @param Team $object Team object
  *
  * @return string
  */
 public function toString($object)
 {
     return $object instanceof GroupMatch ? 'Group ' . $object->getName() : 'Group';
 }