Example #1
0
 /**
  * @param \AppBundle\Entity\User $user
  * @param \AppBundle\Entity\Troop\Troop $troop
  */
 public function createTroop(User $user, Troop $troop)
 {
     $troop->setSlug($this->slugger->slugify($troop->getName()));
     if (($coatOfArms = $troop->getCoatOfArms()) !== null) {
         $coatOfArms->setName($troop->getSlug());
     }
     $roleLabel = $this->translator->trans('troops.roles.default_role_label');
     $role = (new Role())->setTroop($troop)->setLabel($roleLabel)->setSlug($this->slugger->slugify($roleLabel))->setPosition(1);
     $troop->addRole($role);
     $user->addTroopAssociation((new Association())->setUser($user)->setTroop($troop)->setRole($role));
     $this->em->persist($troop);
     $this->em->persist($user);
     $this->em->flush();
 }