Fix querying for permissions
This commit is contained in:
@@ -23,6 +23,7 @@
|
|||||||
|
|
||||||
namespace OCA\Deck\Controller;
|
namespace OCA\Deck\Controller;
|
||||||
|
|
||||||
|
use OCA\Deck\Db\Acl;
|
||||||
use OCA\Deck\Service\BoardService;
|
use OCA\Deck\Service\BoardService;
|
||||||
use OCA\Deck\Service\PermissionService;
|
use OCA\Deck\Service\PermissionService;
|
||||||
use OCP\IRequest;
|
use OCP\IRequest;
|
||||||
@@ -123,7 +124,13 @@ class BoardController extends Controller {
|
|||||||
* @internal param $userId
|
* @internal param $userId
|
||||||
*/
|
*/
|
||||||
public function getUserPermissions($boardId) {
|
public function getUserPermissions($boardId) {
|
||||||
return $this->permissionService->getPermissions($boardId);
|
$permissions = $this->permissionService->getPermissions($boardId);
|
||||||
|
return [
|
||||||
|
'PERMISSION_READ' => $permissions[Acl::PERMISSION_READ],
|
||||||
|
'PERMISSION_EDIT' => $permissions[Acl::PERMISSION_EDIT],
|
||||||
|
'PERMISSION_MANAGE' => $permissions[Acl::PERMISSION_MANAGE],
|
||||||
|
'PERMISSION_SHARE' => $permissions[Acl::PERMISSION_SHARE]
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ class PermissionService {
|
|||||||
$acls = $this->aclMapper->findAll($boardId);
|
$acls = $this->aclMapper->findAll($boardId);
|
||||||
return [
|
return [
|
||||||
Acl::PERMISSION_READ => $owner || $this->userCan($acls, Acl::PERMISSION_READ),
|
Acl::PERMISSION_READ => $owner || $this->userCan($acls, Acl::PERMISSION_READ),
|
||||||
Acl::PERMISSION_EDIT => $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_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),
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -121,6 +121,12 @@ class BoardControllerTest extends \PHPUnit_Framework_TestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function testGetUserPermissions() {
|
public function testGetUserPermissions() {
|
||||||
|
$acl = [
|
||||||
|
Acl::PERMISSION_READ => true,
|
||||||
|
Acl::PERMISSION_EDIT => true,
|
||||||
|
Acl::PERMISSION_MANAGE => true,
|
||||||
|
Acl::PERMISSION_SHARE => true,
|
||||||
|
];
|
||||||
$expected = [
|
$expected = [
|
||||||
'PERMISSION_READ' => true,
|
'PERMISSION_READ' => true,
|
||||||
'PERMISSION_EDIT' => true,
|
'PERMISSION_EDIT' => true,
|
||||||
@@ -130,7 +136,7 @@ class BoardControllerTest extends \PHPUnit_Framework_TestCase {
|
|||||||
$this->permissionService->expects($this->once())
|
$this->permissionService->expects($this->once())
|
||||||
->method('getPermissions')
|
->method('getPermissions')
|
||||||
->with(123)
|
->with(123)
|
||||||
->willReturn($expected);
|
->willReturn($acl);
|
||||||
$this->assertEquals($expected, $this->controller->getUserPermissions(123));
|
$this->assertEquals($expected, $this->controller->getUserPermissions(123));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user