addUserType() public method

Add user type
public addUserType ( Group $type ) : Newscoop\Entity\User
$type Newscoop\Entity\User\Group
return Newscoop\Entity\User
 public function addUserType(\Newscoop\Entity\User\Group $type)
 {
     $this->__load();
     return parent::addUserType($type);
 }
Example #2
0
 /**
  * Set user types
  *
  * @param  Newscoop\Entity\User $user
  * @param  array                $types
  * @return void
  */
 private function setUserTypes(User $user, array $types)
 {
     $user->getUserTypes()->clear();
     foreach ($types as $type) {
         $user->addUserType($this->getEntityManager()->getReference('Newscoop\\Entity\\User\\Group', $type));
     }
 }
Example #3
0
 /**
  * Create new activated user
  *
  * @param string  $email
  * @param string  $password
  * @param string  $firstName
  * @param string  $lastName
  * @param integer $publication
  */
 public function createUser($email, $password, $username, $firstName = null, $lastName = null, $publication = 0, $public = true, $userTypes = array(), $isAdmin = false)
 {
     $users = $this->findBy(array('email' => $email));
     if (!empty($users)) {
         throw new \Newscoop\Exception\ResourcesConflictException("User with this email already exists");
     }
     $user = new User($email);
     $user->setPassword($password);
     $user->setUsername($username);
     $user->setPublic($public);
     $user->setActive();
     $user->setFirstName($firstName);
     $user->setLastName($lastName);
     $user->setPublication($publication);
     $user->setAdmin($isAdmin);
     foreach ($userTypes as $type) {
         $user->addUserType($this->em->getReference('Newscoop\\Entity\\User\\Group', $type));
     }
     $this->em->persist($user);
     $this->em->flush();
     return $user;
 }
Example #4
0
 public function testSaveWithGroup()
 {
     $group = new Group();
     $group->setName('test');
     $this->em->persist($group);
     $user = new User('name');
     $user->addUserType($group);
     $this->repository->save($user, array('username' => 'uname', 'email' => '*****@*****.**', 'user_type' => array()));
     $this->assertEquals(0, count($user->getGroups()));
 }