From 8c7a71ee73ad195e93a4b31c16f5ccea87e3d2ff Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Mon, 10 Feb 2025 02:56:08 -0700 Subject: [PATCH] Update DirectMessageController, fix query --- .../Controllers/DirectMessageController.php | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/app/Http/Controllers/DirectMessageController.php b/app/Http/Controllers/DirectMessageController.php index 4298c1800..b6d14692c 100644 --- a/app/Http/Controllers/DirectMessageController.php +++ b/app/Http/Controllers/DirectMessageController.php @@ -271,32 +271,36 @@ class DirectMessageController extends Controller 'meta', 'created_at', 'read_at' - )->with(['status' => function ($q) { - $q->select('id', 'caption', 'profile_id'); - }])->where(function ($q) use ($pid, $uid) { - $q->where(function ($query) use ($pid, $uid) { - $query->where('from_id', $pid) - ->where('to_id', $uid) - ->where('is_hidden', false); - })->orWhere(function ($query) use ($pid, $uid) { - $query->where('from_id', $uid) - ->where('to_id', $pid); - }); - }); + )->with(['status']); if ($min_id) { $res = $query->where('id', '>', $min_id) + ->where(function ($query) use ($pid, $uid) { + $query->where('from_id', $pid)->where('to_id', $uid); + })->orWhere(function ($query) use ($pid, $uid) { + $query->where('from_id', $uid)->where('to_id', $pid); + }) ->orderBy('id', 'asc') ->take(8) ->get() ->reverse(); } elseif ($max_id) { $res = $query->where('id', '<', $max_id) + ->where(function ($query) use ($pid, $uid) { + $query->where('from_id', $pid)->where('to_id', $uid); + })->orWhere(function ($query) use ($pid, $uid) { + $query->where('from_id', $uid)->where('to_id', $pid); + }) ->orderBy('id', 'desc') ->take(8) ->get(); } else { - $res = $query->orderBy('id', 'desc') + $res = $query->where(function ($query) use ($pid, $uid) { + $query->where('from_id', $pid)->where('to_id', $uid); + })->orWhere(function ($query) use ($pid, $uid) { + $query->where('from_id', $uid)->where('to_id', $pid); + }) + ->orderBy('id', 'desc') ->take(8) ->get(); }