X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/bf8e7f3393d48e6300c4d8775daeb40d55ea2017..refs/pull/2784/head:/app/Http/Controllers/FavouriteController.php diff --git a/app/Http/Controllers/FavouriteController.php b/app/Http/Controllers/FavouriteController.php index 8a26eac8e..f4aeb4faa 100644 --- a/app/Http/Controllers/FavouriteController.php +++ b/app/Http/Controllers/FavouriteController.php @@ -3,12 +3,31 @@ namespace BookStack\Http\Controllers; use BookStack\Entities\Models\Entity; +use BookStack\Entities\Queries\TopFavourites; use BookStack\Interfaces\Favouritable; use BookStack\Model; use Illuminate\Http\Request; class FavouriteController extends Controller { + /** + * Show a listing of all favourite items for the current user. + */ + public function index(Request $request) + { + $viewCount = 20; + $page = intval($request->get('page', 1)); + $favourites = (new TopFavourites)->run($viewCount + 1, (($page - 1) * $viewCount)); + + $hasMoreLink = ($favourites->count() > $viewCount) ? url("/http/source.bookstackapp.com/favourites?page=" . ($page+1)) : null; + + return view('common.detailed-listing-with-more', [ + 'title' => trans('entities.my_favourites'), + 'entities' => $favourites->slice(0, $viewCount), + 'hasMoreLink' => $hasMoreLink, + ]); + } + /** * Add a new item as a favourite. */