diff --git a/app/controllers/api/databases.php b/app/controllers/api/databases.php index 8b3fba5e4b..9c5805375f 100644 --- a/app/controllers/api/databases.php +++ b/app/controllers/api/databases.php @@ -1878,7 +1878,7 @@ App::post('/v1/databases/:databaseId/collections/:collectionId/documents') fn ($permission) => $permission !== Database::PERMISSION_CREATE ), ); - + $permissions = PermissionsProcessor::handleAggregates($permissions); if (!PermissionsProcessor::allowedForResourceType('document', $permissions)) { diff --git a/src/Appwrite/Messaging/Adapter/Realtime.php b/src/Appwrite/Messaging/Adapter/Realtime.php index 5617e76143..3779732e66 100644 --- a/src/Appwrite/Messaging/Adapter/Realtime.php +++ b/src/Appwrite/Messaging/Adapter/Realtime.php @@ -300,7 +300,7 @@ class Realtime extends Adapter $channels[] = 'files'; $channels[] = 'buckets.' . $payload->getAttribute('bucketId') . '.files'; $channels[] = 'buckets.' . $payload->getAttribute('bucketId') . '.files.' . $payload->getId(); - $roles = $bucket->getAttribute('fileSecurity', false) + $roles = $bucket->getAttribute('fileSecurity', false) ? \array_merge($bucket->getRead(), $payload->getRead()) : $bucket->getRead(); } diff --git a/src/Appwrite/Permissions/PermissionsProcessor.php b/src/Appwrite/Permissions/PermissionsProcessor.php index 9fbc0b7d85..3b16d4def5 100644 --- a/src/Appwrite/Permissions/PermissionsProcessor.php +++ b/src/Appwrite/Permissions/PermissionsProcessor.php @@ -35,8 +35,7 @@ class PermissionsProcessor ?array $permissions, string $userId, array $allowedPermissions = Database::PERMISSIONS - ): array - { + ): array { if (\is_null($permissions)) { $permissions = []; if (!empty($userId)) {