diff --git a/app/Http/Controllers/BookshelfController.php b/app/Http/Controllers/BookshelfController.php index a0e9b7199..c46cac277 100644 --- a/app/Http/Controllers/BookshelfController.php +++ b/app/Http/Controllers/BookshelfController.php @@ -103,6 +103,7 @@ class BookshelfController extends Controller public function show(string $slug) { $shelf = $this->bookshelfRepo->getBySlug($slug); + $view = setting()->getForCurrentUser('books_view_type', config('app.views.books')); $this->checkOwnablePermission('book-view', $shelf); Views::add($shelf); @@ -111,6 +112,7 @@ class BookshelfController extends Controller $this->setPageTitle($shelf->getShortName()); return view('shelves.show', [ 'shelf' => $shelf, + 'view' => $view, 'activity' => Activity::entityActivity($shelf, 20, 1) ]); } diff --git a/resources/views/shelves/show.blade.php b/resources/views/shelves/show.blade.php index 2212e1c1e..56df61c91 100644 --- a/resources/views/shelves/show.blade.php +++ b/resources/views/shelves/show.blade.php @@ -13,11 +13,19 @@

{!! nl2br(e($shelf->description)) !!}

@if(count($shelf->visibleBooks) > 0) -
- @foreach($shelf->visibleBooks as $book) - @include('books.list-item', ['book' => $book]) - @endforeach -
+ @if($view === 'list') +
+ @foreach($shelf->visibleBooks as $book) + @include('books.list-item', ['book' => $book]) + @endforeach +
+ @else +
+ @foreach($shelf->visibleBooks as $key => $book) + @include('books.grid-item', ['book' => $book]) + @endforeach +
+ @endif @else

@@ -87,6 +95,8 @@ @endif + @include('partials.view-toggle', ['view' => $view, 'type' => 'book']) +
@if(userCan('bookshelf-update', $shelf))