コード例 #1
0
ファイル: ClearPermissions.php プロジェクト: morilog/acl
 public function handle()
 {
     try {
         $configs = $this->config->get('acl');
         $this->permissionManager->deleteAllPermissions();
         $this->cache->forget($configs['acl.permission_cache_key']);
         $this->cache->tags($configs['acl.user_permissions_cache_key'])->flush();
         $this->info('All permissions are deleted from database and cache');
     } catch (\Exception $e) {
         $this->error($e->getMessage());
     }
 }
コード例 #2
0
ファイル: Acl.php プロジェクト: morilog/acl
 /**
  * @param Role $role
  * @param array $permissions
  * @return mixed
  */
 public function addPermissionsToRole($role, array $permissions)
 {
     $allPermissions = $this->getAllPermissions();
     foreach ($permissions as &$permission) {
         $permission = $this->permissionManager->getPermission($permission);
     }
     return $this->roleManager->addPermissionsToRole($role, $permissions);
 }
コード例 #3
0
ファイル: RoleManager.php プロジェクト: morilog/acl
 /**
  * @author Morteza Parvini <*****@*****.**>
  * @param $role
  * @param $permissions
  * @return mixed
  */
 public function addPermissionsToRole($role, $permissions)
 {
     $role = $this->getRole($role);
     foreach ($permissions as &$permission) {
         $permission = $this->permossionManager->getPermission($permission);
     }
     return $role->addPermissions($permissions);
 }