From 5792fde58f1499ca6ff694f8ae5694fbdd4870be Mon Sep 17 00:00:00 2001 From: Doar Mihai Date: Sun, 8 Mar 2026 13:03:14 +0200 Subject: [PATCH] media list processing fix and all public lists page --- app/Http/Controllers/MediaListController.php | 12 ++++ app/Models/MediaList.php | 6 ++ .../MovieProcessingService.php | 1 + resources/views/layouts/header.blade.php | 6 ++ resources/views/lists/public.blade.php | 59 +++++++++++++++++++ .../views/profile/lists/create.blade.php | 2 +- routes/web.php | 1 + 7 files changed, 86 insertions(+), 1 deletion(-) create mode 100644 resources/views/lists/public.blade.php diff --git a/app/Http/Controllers/MediaListController.php b/app/Http/Controllers/MediaListController.php index e1cbf74..1edb5d4 100644 --- a/app/Http/Controllers/MediaListController.php +++ b/app/Http/Controllers/MediaListController.php @@ -14,6 +14,17 @@ use Illuminate\Support\Str; class MediaListController extends Controller { + public function publicLists() + { + $lists = MediaList::with('user') + ->whereNotIn('name', MediaList::SPECIAL_LISTS) + ->where('public', true) + ->orderBy('created_at', 'desc') + ->paginate(20); + + return view('lists.public', compact('lists')); + } + public function index(string $slug) { $lists = MediaList::whereNotIn('name', MediaList::SPECIAL_LISTS) @@ -50,6 +61,7 @@ class MediaListController extends Controller 'name' => $request->get('name'), 'slug' => $slug, 'user_id' => Auth::user()->id, + 'public' => $request->has('public') ? true : false, ]); return redirect()->route('profile.list.show', [Auth::user()->slug, $slug]); diff --git a/app/Models/MediaList.php b/app/Models/MediaList.php index 61bc2f1..0a667b3 100644 --- a/app/Models/MediaList.php +++ b/app/Models/MediaList.php @@ -30,5 +30,11 @@ class MediaList extends Model 'slug', 'poster_path', 'user_id', + 'public', ]; + + public function user() + { + return $this->belongsTo(User::class); + } } diff --git a/app/Service/MediaProcessing/MovieProcessingService.php b/app/Service/MediaProcessing/MovieProcessingService.php index 1f15750..8396a4d 100644 --- a/app/Service/MediaProcessing/MovieProcessingService.php +++ b/app/Service/MediaProcessing/MovieProcessingService.php @@ -515,6 +515,7 @@ class MovieProcessingService implements ProcessingInterface unset($tmdbList['id']); if (!$list) { + $tmdbList['slug'] = Str::slug($tmdbList['name']); $list = MediaList::create($tmdbList); } diff --git a/resources/views/layouts/header.blade.php b/resources/views/layouts/header.blade.php index 3bc5c5b..a6683c7 100644 --- a/resources/views/layouts/header.blade.php +++ b/resources/views/layouts/header.blade.php @@ -55,6 +55,12 @@ Forums +