コード例 #1
0
 public function andWith(ResourcePermission $permission)
 {
     $permission = new ResourcePermission($this->canRead() && $permission->canRead(), $this->canCreate() && $permission->canCreate(), $this->canUpdate() && $permission->canUpdate(), $this->canDelete() && $permission->canDelete());
     return $permission;
 }
コード例 #2
0
 protected function verifyPermissions(ResourcePermission $permission, $read, $create, $update, $delete)
 {
     $this->assertEquals($read, $permission->canRead());
     $this->assertEquals($create, $permission->canCreate());
     $this->assertEquals($update, $permission->canUpdate());
     $this->assertEquals($delete, $permission->canDelete());
 }
コード例 #3
0
 public function areDataGroupPermissionsAvailable($permissions)
 {
     $permitted = true;
     foreach ($permissions as $dataGroupName => $requestedResourcePermission) {
         $requestedResourcePermission = ResourcePermission::fromArray($requestedResourcePermission);
         $dataGroupPermissions = UserRoleManagerFactory::getUserRoleManager()->getDataGroupPermissions($dataGroupName);
         if ($permitted && $requestedResourcePermission->canRead()) {
             $permitted = $permitted && $dataGroupPermissions->canRead();
         }
         if ($permitted && $requestedResourcePermission->canCreate()) {
             $permitted = $dataGroupPermissions->canCreate();
         }
         if ($permitted && $requestedResourcePermission->canUpdate()) {
             $permitted = $dataGroupPermissions->canUpdate();
         }
         if ($permitted && $requestedResourcePermission->canDelete()) {
             $permitted = $dataGroupPermissions->canDelete();
         }
         if (!$permitted) {
             break;
         }
     }
     return $permitted;
 }