From c05bcb758f85c9c05e8bb12dcb5035a706c67d95 Mon Sep 17 00:00:00 2001 From: x Date: Mon, 10 Jun 2024 01:56:51 +0200 Subject: [PATCH] tagview #3 --- app/Http/Controllers/UserController.php | 2 ++ app/Models/Video.php | 11 +++++++++++ resources/views/layout1/index.blade.php | 2 +- resources/views/layout1/main.blade.php | 2 +- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 5f0c46e..d718475 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -369,6 +369,7 @@ class UserController extends Controller return view('video', [ 'video' => $vid, 'related' => $user, + 'isTag' => false, 'banner' => Banner::getRandom($vid->isSfw()), 'sfw' => $sfw ]); @@ -435,6 +436,7 @@ class UserController extends Controller return view('video', [ 'video' => $vid, 'related' => $user, + 'isTag' => false, 'banner' => Banner::getRandom($vid->isSfw()), 'sfw' => $sfw, ]); diff --git a/app/Models/Video.php b/app/Models/Video.php index befe5e9..96f892c 100644 --- a/app/Models/Video.php +++ b/app/Models/Video.php @@ -68,6 +68,17 @@ class Video extends Model return $this->belongsToMany(User::class, 'favorites', 'video_id', 'user_id'); } + public function hasAllTags($tags) { + $tags = app(TagService::class)->buildTagArrayNormalized($tags); + $videotags = $this->getTagArrayNormalizedAttribute(); + foreach ($tags as $t) { + if (!in_array($t,$videotags)) { + return false; + } + } + return true; + } + public static function getFirstId($related = null, $isTag = false) { if ($related) { if (!$isTag) { diff --git a/resources/views/layout1/index.blade.php b/resources/views/layout1/index.blade.php index 57e0ce8..eadd00d 100644 --- a/resources/views/layout1/index.blade.php +++ b/resources/views/layout1/index.blade.php @@ -28,7 +28,7 @@ @if($edit = auth()->check() && auth()->user()->can('edit_video'))
@endif - @if(isset($q)) + @if(isset($q) && $video->hasAllTags($q)) {{$video->id}} @else {{$video->id}} diff --git a/resources/views/layout1/main.blade.php b/resources/views/layout1/main.blade.php index 082fbf5..507051b 100644 --- a/resources/views/layout1/main.blade.php +++ b/resources/views/layout1/main.blade.php @@ -16,7 +16,7 @@ $thumb = str_replace(".webm","",$video->file); ?>
- @if(isset($q)) + @if(isset($q) && $video->hasAllTags($q)) @else