From 7593c300ea3a1d43d2ea1f68f2b0d4b722bb7581 Mon Sep 17 00:00:00 2001 From: Luka Trovic Date: Wed, 10 Apr 2024 20:02:33 +0200 Subject: [PATCH] fix: permission check for cloning board Signed-off-by: Luka Trovic [skip ci] --- lib/Service/BoardService.php | 4 ++++ src/components/navigation/AppNavigationBoard.vue | 9 ++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/lib/Service/BoardService.php b/lib/Service/BoardService.php index 4ab9e2c4a..1022c2d81 100644 --- a/lib/Service/BoardService.php +++ b/lib/Service/BoardService.php @@ -547,6 +547,10 @@ class BoardService { public function clone($id, $userId) { $this->boardServiceValidator->check(compact('id', 'userId')); + if (!$this->permissionService->canCreate()) { + throw new NoPermissionException('Creating boards has been disabled for your account.'); + } + $this->permissionService->checkPermission($this->boardMapper, $id, Acl::PERMISSION_READ); $board = $this->boardMapper->find($id); diff --git a/src/components/navigation/AppNavigationBoard.vue b/src/components/navigation/AppNavigationBoard.vue index c1132025f..f3100dbd9 100644 --- a/src/components/navigation/AppNavigationBoard.vue +++ b/src/components/navigation/AppNavigationBoard.vue @@ -47,7 +47,7 @@ @click="actionEdit"> {{ t('deck', 'Edit board') }} -