From dc4e683f0a0927c8a71b53fd93a2de54111da940 Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Tue, 4 Feb 2025 18:22:40 -0700 Subject: [PATCH] Update MediaController, fix redirect bug --- app/Http/Controllers/MediaController.php | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/app/Http/Controllers/MediaController.php b/app/Http/Controllers/MediaController.php index cbc08cb5a..15c470220 100644 --- a/app/Http/Controllers/MediaController.php +++ b/app/Http/Controllers/MediaController.php @@ -9,7 +9,6 @@ class MediaController extends Controller { public function index(Request $request) { - //return view('settings.drive.index'); abort(404); } @@ -20,13 +19,21 @@ class MediaController extends Controller public function fallbackRedirect(Request $request, $pid, $mhash, $uhash, $f) { - abort_if(! (bool) config_cache('pixelfed.cloud_storage'), 404); + if (! (bool) config_cache('pixelfed.cloud_storage')) { + return redirect('/storage/no-preview.png', 302); + } + $path = 'public/m/_v2/'.$pid.'/'.$mhash.'/'.$uhash.'/'.$f; + $media = Media::whereProfileId($pid) ->whereMediaPath($path) ->whereNotNull('cdn_url') - ->firstOrFail(); + ->first(); + + if (! $media) { + return redirect('/storage/no-preview.png', 302); + } - return redirect()->away($media->cdn_url); + return redirect()->away($media->cdn_url, 302); } }