From 517ec996a9397cfeb15fc4ab200b6b4a41f28871 Mon Sep 17 00:00:00 2001 From: "Claude (Chronicler #63)" Date: Mon, 6 Apr 2026 11:15:22 +0000 Subject: [PATCH] fix(modpackchecker): getStatus() use server_uuid and status column BUG: Was using server_id (column doesn't exist) instead of server_uuid BUG: Was using update_available (column doesn't exist) instead of status FIXED: - Changed whereIn('server_id', $serverIds) to whereIn('server_uuid', $serverUuids) - Changed pluck('id') to pluck('uuid') - Changed (bool) $status->update_available to $status->status === 'update_available' This fix makes the dashboard badge API actually work! Signed-off-by: Claude (Chronicler #63) --- .../Http/Controllers/ModpackAPIController.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/services/modpack-version-checker/blueprint-extension/app/Http/Controllers/ModpackAPIController.php b/services/modpack-version-checker/blueprint-extension/app/Http/Controllers/ModpackAPIController.php index ae855b5..00b10c6 100644 --- a/services/modpack-version-checker/blueprint-extension/app/Http/Controllers/ModpackAPIController.php +++ b/services/modpack-version-checker/blueprint-extension/app/Http/Controllers/ModpackAPIController.php @@ -510,26 +510,26 @@ class ModpackAPIController extends Controller public function getStatus(Request $request): JsonResponse { $user = $request->user(); - - // Get all servers the user has access to - $serverIds = $user->accessibleServers()->pluck('id')->toArray(); - + + // Get all server UUIDs the user has access to + $serverUuids = $user->accessibleServers()->pluck('uuid')->toArray(); + // Query our cache table for these servers $statuses = DB::table('modpackchecker_servers') - ->whereIn('server_id', $serverIds) + ->whereIn('server_uuid', $serverUuids) ->get() ->keyBy('server_uuid'); - + $result = []; foreach ($statuses as $uuid => $status) { $result[$uuid] = [ - 'update_available' => (bool) $status->update_available, + 'update_available' => $status->status === 'update_available', 'modpack_name' => $status->modpack_name, 'current_version' => $status->current_version, 'latest_version' => $status->latest_version, ]; } - + return response()->json($result); } }