diff --git a/app/Http/Controllers/BookmarksController.php b/app/Http/Controllers/BookmarksController.php index 3779a476..b72047de 100644 --- a/app/Http/Controllers/BookmarksController.php +++ b/app/Http/Controllers/BookmarksController.php @@ -33,4 +33,19 @@ class BookmarksController extends Controller return view('bookmarks.show', compact('bookmark')); } + + /** + * Show bookmakrs tagged with a specific tag. + * + * @param string $tag + * @return View + */ + public function tagged(string $tag): View + { + $bookmarks = Bookmark::whereHas('tags', function ($query) use ($tag) { + $query->where('tag', $tag); + })->latest()->with('tags')->withCount('tags')->paginate(10); + + return view('bookmarks.tagged', compact('bookmarks', 'tag')); + } } diff --git a/resources/views/bookmarks/tagged.blade.php b/resources/views/bookmarks/tagged.blade.php new file mode 100644 index 00000000..4e7b59ea --- /dev/null +++ b/resources/views/bookmarks/tagged.blade.php @@ -0,0 +1,47 @@ +@extends('master') + +@section('title')Bookmarks « @stop + +@section('content') +
{{ $bookmark->content }}
+ @endisset + + @isset($bookmark->screenshot) +