From d645d6ca26e63f9495337f5d98b474ea027ad084 Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Fri, 10 May 2024 23:54:47 -0600 Subject: [PATCH] Update ApiV1Controller, add pe (pixelfed entity) support to /api/v1/statuses/{id}/context endpoint --- app/Http/Controllers/Api/ApiV1Controller.php | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/app/Http/Controllers/Api/ApiV1Controller.php b/app/Http/Controllers/Api/ApiV1Controller.php index d449923ae..bea98b9de 100644 --- a/app/Http/Controllers/Api/ApiV1Controller.php +++ b/app/Http/Controllers/Api/ApiV1Controller.php @@ -3020,9 +3020,9 @@ class ApiV1Controller extends Controller abort_unless($request->user()->tokenCan('read'), 403); $user = $request->user(); - AccountService::setLastActive($user->id); $pid = $user->profile_id; $status = StatusService::getMastodon($id, false); + $pe = $request->has(self::PF_API_ENTITY_KEY); if (! $status || ! isset($status['account'])) { return response('', 404); @@ -3049,7 +3049,9 @@ class ApiV1Controller extends Controller $descendants = []; if ($status['in_reply_to_id']) { - $ancestors[] = StatusService::getMastodon($status['in_reply_to_id'], false); + $ancestors[] = $pe ? + StatusService::get($status['in_reply_to_id'], false) : + StatusService::getMastodon($status['in_reply_to_id'], false); } if ($status['replies_count']) { @@ -3059,8 +3061,10 @@ class ApiV1Controller extends Controller ->where('in_reply_to_id', $id) ->limit(20) ->pluck('id') - ->map(function ($sid) { - return StatusService::getMastodon($sid, false); + ->map(function ($sid) use ($pe) { + return $pe ? + StatusService::get($sid, false) : + StatusService::getMastodon($sid, false); }) ->filter(function ($post) use ($filters) { return $post && isset($post['account'], $post['account']['id']) && ! in_array($post['account']['id'], $filters);