Merge pull request #816 from nextcloud/bugfix/780/duplicate-delete-call

Fix duplicate call to delete
This commit is contained in:
Julius Härtl
2019-03-05 12:27:00 +01:00
committed by GitHub
3 changed files with 8 additions and 4 deletions

View File

@@ -307,6 +307,9 @@ class BoardService {
$this->permissionService->checkPermission($this->boardMapper, $id, Acl::PERMISSION_READ);
$board = $this->find($id);
if ($board->getDeletedAt() > 0) {
throw new BadRequestException('This board has already been deleted');
}
$board->setDeletedAt(time());
$board = $this->boardMapper->update($board);
$this->activityManager->triggerEvent(ActivityManager::DECK_OBJECT_BOARD, $board, ActivityManager::SUBJECT_BOARD_DELETE);

View File

@@ -25,10 +25,10 @@
<?php p($l->t('Archive board')); ?>
</a>
</li>
<li ng-if="boardservice.canManage(b)" ng-click="boardDelete(b)">
<li ng-if="boardservice.canManage(b)">
<a class="icon-delete" title ="<?php p($l->t('Delete board')); ?>" ng-click="boardDelete(b)">
<?php p($l->t('Delete board')); ?>
</a>
<?php p($l->t('Delete board')); ?>
</a>
</li>
<li ui-sref="board.detail({boardId: b.id})">
<a class="icon-settings-dark">

View File

@@ -204,6 +204,7 @@ class BoardServiceTest extends TestCase {
public function testDelete() {
$board = new Board();
$board->setOwner('admin');
$board->setDeletedAt(0);
$this->boardMapper->expects($this->once())
->method('find')
->willReturn($board);
@@ -213,7 +214,7 @@ class BoardServiceTest extends TestCase {
'admin' => 'admin',
]);
$boardDeleted = clone $board;
$board->setDeletedAt(1);
$boardDeleted->setDeletedAt(1);
$this->boardMapper->expects($this->once())
->method('update')
->willReturn($boardDeleted);