Fix server owner permissions (#1703)

This commit is contained in:
danielkurek 2025-09-15 20:13:00 +02:00 committed by GitHub
parent 8dc99e6390
commit df4543a079
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -17,6 +17,10 @@ class GetUserPermissionsService
*/ */
public function handle(Server $server, User $user): array public function handle(Server $server, User $user): array
{ {
if ($user->id === $server->owner_id) {
return ['*'];
}
if ($user->isAdmin() && ($user->can('view', $server) || $user->can('update', $server))) { if ($user->isAdmin() && ($user->can('view', $server) || $user->can('update', $server))) {
$permissions = $user->can('update', $server) ? ['*'] : ['websocket.connect', 'backup.read']; $permissions = $user->can('update', $server) ? ['*'] : ['websocket.connect', 'backup.read'];
@ -27,10 +31,6 @@ class GetUserPermissionsService
return $permissions; return $permissions;
} }
if ($user->id === $server->owner_id) {
return ['*'];
}
/** @var Subuser|null $subuserPermissions */ /** @var Subuser|null $subuserPermissions */
$subuserPermissions = $server->subusers()->where('user_id', $user->id)->first(); $subuserPermissions = $server->subusers()->where('user_id', $user->id)->first();