user can only clone a board on canManage permissions

Signed-off-by: Jakob Röhrl <jakob.roehrl@web.de>
This commit is contained in:
Jakob Röhrl
2020-05-12 09:17:14 +02:00
parent 1efc58404d
commit 6ea26af9ff
3 changed files with 24 additions and 22 deletions

View File

@@ -621,13 +621,14 @@ class BoardService {
/**
* @param $id
* @param $userId
* @return Board
* @throws DoesNotExistException
* @throws \OCA\Deck\NoPermissionException
* @throws \OCP\AppFramework\Db\MultipleObjectsReturnedException
* @throws BadRequestException
*/
public function clone($id) {
public function clone($id, $userId) {
if (is_numeric($id) === false) {
throw new BadRequestException('board id must be a number');
}
@@ -637,7 +638,7 @@ class BoardService {
$board = $this->boardMapper->find($id);
$newBoard = new Board();
$newBoard->setTitle($board->getTitle() . ' (' . $this->l10n->t('copy') . ')');
$newBoard->setOwner($board->getOwner());
$newBoard->setOwner($userId);
$newBoard->setColor($board->getColor());
$permissions = $this->permissionService->matchPermissions($board);
$newBoard->setPermissions([