From 794c0712bc3b8dbfeee9162302c7ef196726ea32 Mon Sep 17 00:00:00 2001 From: "Christopher C. Wells" Date: Sat, 27 Feb 2021 05:53:52 -0800 Subject: [PATCH] Add basic tags front end support --- app/Http/Controllers/FoodController.php | 2 +- app/Http/Controllers/RecipeController.php | 2 +- app/Models/Traits/Ingredient.php | 6 +-- .../views/components/search-view.blade.php | 50 ++++++++++++------- resources/views/foods/index.blade.php | 2 +- resources/views/recipes/index.blade.php | 2 +- 6 files changed, 38 insertions(+), 26 deletions(-) diff --git a/app/Http/Controllers/FoodController.php b/app/Http/Controllers/FoodController.php index 1334a41..e8d1db5 100644 --- a/app/Http/Controllers/FoodController.php +++ b/app/Http/Controllers/FoodController.php @@ -19,7 +19,7 @@ class FoodController extends Controller */ public function index(): View { - return view('foods.index'); + return view('foods.index')->with('tags', Food::getTagTotals()); } /** diff --git a/app/Http/Controllers/RecipeController.php b/app/Http/Controllers/RecipeController.php index 3c9fb8d..4c7a75e 100644 --- a/app/Http/Controllers/RecipeController.php +++ b/app/Http/Controllers/RecipeController.php @@ -27,7 +27,7 @@ class RecipeController extends Controller */ public function index(): View { - return view('recipes.index'); + return view('recipes.index')->with('tags', Recipe::getTagTotals()); } /** diff --git a/app/Models/Traits/Ingredient.php b/app/Models/Traits/Ingredient.php index f50c3c4..c3269b7 100644 --- a/app/Models/Traits/Ingredient.php +++ b/app/Models/Traits/Ingredient.php @@ -43,11 +43,7 @@ trait Ingredient public static function getTagTotals(string $locale = null): Collection { $locale = $locale ?? app()->getLocale(); return Tag::query()->join('taggables', 'taggables.tag_id', '=', 'id') - ->select([ - 'id', - "name->{$locale} as name", - DB::raw('count(*) as total') - ]) + ->select(['id', 'name', DB::raw('count(*) as total')]) ->where('taggables.taggable_type', '=', static::class) ->groupBy('id') ->orderBy("name->{$locale}") diff --git a/resources/views/components/search-view.blade.php b/resources/views/components/search-view.blade.php index 97fe5e6..ea99daf 100644 --- a/resources/views/components/search-view.blade.php +++ b/resources/views/components/search-view.blade.php @@ -1,22 +1,35 @@
- -
- {{ $results }} +
+
+ +
+ Tags + @foreach($tags as $tag) + {{ $tag->name }} + @endforeach +
+
+
+
+ {{ $results }} +
+ + Load more + +
- - Load more -
@once @@ -61,6 +74,9 @@ else { this.loadMore(); } + }, + filterByTag(e) { + console.log(e.target.text); } } } diff --git a/resources/views/foods/index.blade.php b/resources/views/foods/index.blade.php index 2ab3525..c42feab 100644 --- a/resources/views/foods/index.blade.php +++ b/resources/views/foods/index.blade.php @@ -15,7 +15,7 @@
- +