Check if sharing is disabled for a user via core settings

Signed-off-by: Julius Härtl <jus@bitgrid.net>
This commit is contained in:
Julius Härtl
2018-12-04 07:51:47 +01:00
parent 9e58207392
commit bff3cafb37
2 changed files with 10 additions and 3 deletions

View File

@@ -94,6 +94,7 @@ class BoardService {
$groupBoards = $this->boardMapper->findAllByGroups($userInfo['user'], $userInfo['groups'],null, null, $since);
$complete = array_merge($userBoards, $groupBoards);
$result = [];
/** @var Board $item */
foreach ($complete as &$item) {
if (!array_key_exists($item->getId(), $result)) {
$this->boardMapper->mapOwner($item);

View File

@@ -84,7 +84,8 @@ class PermissionService {
Acl::PERMISSION_READ => $owner || $this->userCan($acls, Acl::PERMISSION_READ),
Acl::PERMISSION_EDIT => $owner || $this->userCan($acls, Acl::PERMISSION_EDIT),
Acl::PERMISSION_MANAGE => $owner || $this->userCan($acls, Acl::PERMISSION_MANAGE),
Acl::PERMISSION_SHARE => $owner || $this->userCan($acls, Acl::PERMISSION_SHARE),
Acl::PERMISSION_SHARE => ($owner || $this->userCan($acls, Acl::PERMISSION_SHARE))
&& (!\OC::$server->getShareManager()->sharingDisabledForUser($this->userId))
];
}
@@ -102,7 +103,8 @@ class PermissionService {
Acl::PERMISSION_READ => $owner || $this->userCan($acls, Acl::PERMISSION_READ),
Acl::PERMISSION_EDIT => $owner || $this->userCan($acls, Acl::PERMISSION_EDIT),
Acl::PERMISSION_MANAGE => $owner || $this->userCan($acls, Acl::PERMISSION_MANAGE),
Acl::PERMISSION_SHARE => $owner || $this->userCan($acls, Acl::PERMISSION_SHARE),
Acl::PERMISSION_SHARE => ($owner || $this->userCan($acls, Acl::PERMISSION_SHARE))
&& (!\OC::$server->getShareManager()->sharingDisabledForUser($this->userId))
];
}
@@ -125,6 +127,10 @@ class PermissionService {
throw new NoPermissionException('Permission denied');
}
if ($permission === Acl::PERMISSION_SHARE && !\OC::$server->getShareManager()->sharingDisabledForUser($this->userId)) {
return false;
}
if ($this->userIsBoardOwner($boardId)) {
return true;
}
@@ -150,7 +156,7 @@ class PermissionService {
} catch (DoesNotExistException $e) {
} catch (MultipleObjectsReturnedException $e) {
return false;
}
}
}
/**