Example #1
0
 /**
  * Add permission to the role.
  *
  * @param Role[]     $roles      Already created roles.
  * @param string     $roleName   The role name.
  * @param Permission $permission The permission name.
  * @param \User      $contaoUser The Contao user.
  * @param User       $user       The security user.
  *
  * @return Role
  */
 private function addPermissionToRole(&$roles, $roleName, Permission $permission, $contaoUser, User $user)
 {
     $workflow = $permission->getWorkflowName();
     if (!isset($roles[$workflow])) {
         $role = new Role($roleName, $permission->getWorkflowName(), $this->translateLabel($roleName), array('user' => $contaoUser));
         $roles[$workflow] = $role;
         $user->assign($role);
     }
     $roles[$workflow]->addPermission($permission);
     return $roles[$workflow];
 }