Example #1
0
 /**
  * @param Workspace $workspace
  * @param User      $user
  *
  * @return User
  */
 public function workspaceUser(Workspace $workspace, User $user)
 {
     $role = new Role();
     $role->setName("ROLE_WS_{$workspace->getName()}_{$user->getUsername()}");
     $role->setTranslationKey($role->getName());
     $role->setWorkspace($workspace);
     $user->addRole($role);
     $this->om->persist($role);
     $this->om->persist($user);
     return $user;
 }
Example #2
0
 /**
  * @param string                                                   $name
  * @param string                                                   $translationKey
  * @param \Claroline\CoreBundle\Entity\Workspace\Workspace $workspace
  * @param boolean                                                  $isReadOnly
  *
  * @return \Claroline\CoreBundle\Entity\Role
  */
 public function createWorkspaceRole($name, $translationKey, Workspace $workspace, $isReadOnly = false)
 {
     $role = new Role();
     $role->setName($name);
     $role->setTranslationKey($translationKey);
     $role->setReadOnly($isReadOnly);
     $role->setType(Role::WS_ROLE);
     $role->setWorkspace($workspace);
     $this->om->persist($role);
     $workspace->addRole($role);
     $this->om->persist($workspace);
     $this->om->flush();
     return $role;
 }
 protected static function createRole($name, Workspace $workspace = null)
 {
     $role = new Role();
     $role->setName($name);
     $role->setTranslationKey($name);
     $role->setType(Role::PLATFORM_ROLE);
     if ($workspace) {
         $role->setType(Role::WS_ROLE);
         $role->setWorkspace($workspace);
     }
     self::create($name, $role);
 }