Merge pull request #3598 from BookStackApp/chapter_sort_book_option

Added 'Sort Book' action to chapters
This commit is contained in:
Dan Brown 2022-07-26 12:37:18 +01:00 committed by GitHub
commit 4fa73be80e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 0 deletions

View File

@ -171,6 +171,7 @@ return [
'chapters_permissions_active' => 'Chapter Permissions Active',
'chapters_permissions_success' => 'Chapter Permissions Updated',
'chapters_search_this' => 'Search this chapter',
'chapter_sort_book' => 'Sort Book',
// Pages
'page' => 'Page',

View File

@ -147,6 +147,14 @@
</a>
@endif
@if($chapter->book && userCan('book-update', $chapter->book))
<hr class="primary-background"/>
<a href="{{ $chapter->book->getUrl('/sort') }}" class="icon-list-item">
<span>@icon('sort')</span>
<span>{{ trans('entities.chapter_sort_book') }}</span>
</a>
@endif
<hr class="primary-background"/>
@if(signedInUser())

View File

@ -146,4 +146,16 @@ class ChapterTest extends TestCase
$newChapter2 = Chapter::query()->where('name', '=', 'My copied again chapter')->first();
$this->assertEquals($chapter->pages()->count(), $newChapter2->pages()->count());
}
public function test_sort_book_action_visible_if_permissions_allow()
{
/** @var Chapter $chapter */
$chapter = Chapter::query()->first();
$resp = $this->actingAs($this->getViewer())->get($chapter->getUrl());
$this->withHtml($resp)->assertLinkNotExists($chapter->book->getUrl('sort'));
$resp = $this->asEditor()->get($chapter->getUrl());
$this->withHtml($resp)->assertLinkExists($chapter->book->getUrl('sort'));
}
}