Fix: getStatus returns all servers for root admins
accessibleServers() only returns explicitly assigned servers — admins don't get them on the client API side. Now checks root_admin and returns all servers for admin users. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
93907d4d16
commit
4e5ee7e49d
@@ -232,7 +232,12 @@ class ModpackAPIController extends Controller
|
||||
}
|
||||
|
||||
// Get all server UUIDs the user has access to
|
||||
$serverUuids = $user->accessibleServers()->pluck('uuid')->toArray();
|
||||
// Root admins can see all servers; regular users only see assigned servers
|
||||
if (method_exists($user, 'root_admin') ? $user->root_admin : ($user->root_admin ?? false)) {
|
||||
$serverUuids = \Pterodactyl\Models\Server::pluck('uuid')->toArray();
|
||||
} else {
|
||||
$serverUuids = $user->accessibleServers()->pluck('uuid')->toArray();
|
||||
}
|
||||
|
||||
// Query our cache table for these servers
|
||||
$statuses = DB::table('modpackchecker_servers')
|
||||
|
||||
Reference in New Issue
Block a user