From 017703ff1a697d825219a9fd9d68d778b12e8733 Mon Sep 17 00:00:00 2001 From: Dan Brown Date: Mon, 16 Dec 2019 11:54:53 +0000 Subject: [PATCH] Updated page delete to return to chapter if within one - Added test to cover Closes #1715 --- app/Http/Controllers/PageController.php | 3 ++- tests/Entity/EntityTest.php | 10 ++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/PageController.php b/app/Http/Controllers/PageController.php index 630f888ed..b216c19a8 100644 --- a/app/Http/Controllers/PageController.php +++ b/app/Http/Controllers/PageController.php @@ -304,11 +304,12 @@ class PageController extends Controller $this->checkOwnablePermission('page-delete', $page); $book = $page->book; + $parent = $page->chapter ?? $book; $this->pageRepo->destroy($page); Activity::addMessage('page_delete', $page->name, $book->id); $this->showSuccessNotification(trans('entities.pages_delete_success')); - return redirect($book->getUrl()); + return redirect($parent->getUrl()); } /** diff --git a/tests/Entity/EntityTest.php b/tests/Entity/EntityTest.php index 3d12ed749..97684ea4d 100644 --- a/tests/Entity/EntityTest.php +++ b/tests/Entity/EntityTest.php @@ -315,4 +315,14 @@ class EntityTest extends BrowserKitTest ->seePageIs($book->getUrl()); } + public function test_page_within_chapter_deletion_returns_to_chapter() + { + $chapter = Chapter::query()->first(); + $page = $chapter->pages()->first(); + + $this->asEditor()->visit($page->getUrl('/delete')) + ->submitForm('Confirm') + ->seePageIs($chapter->getUrl()); + } + }