diff --git a/app/init/models.php b/app/init/models.php index 1aa8d8ef1f..74ff7573fb 100644 --- a/app/init/models.php +++ b/app/init/models.php @@ -112,8 +112,8 @@ use Appwrite\Utopia\Response\Model\PlatformLinux; use Appwrite\Utopia\Response\Model\PlatformList; use Appwrite\Utopia\Response\Model\PlatformWeb; use Appwrite\Utopia\Response\Model\PlatformWindows; -use Appwrite\Utopia\Response\Model\Presence; use Appwrite\Utopia\Response\Model\Preferences; +use Appwrite\Utopia\Response\Model\Presence; use Appwrite\Utopia\Response\Model\Project; use Appwrite\Utopia\Response\Model\Provider; use Appwrite\Utopia\Response\Model\ProviderRepository; diff --git a/src/Appwrite/Platform/Modules/Presences/HTTP/Action.php b/src/Appwrite/Platform/Modules/Presences/HTTP/Action.php index 21e08f065d..787d0f3081 100644 --- a/src/Appwrite/Platform/Modules/Presences/HTTP/Action.php +++ b/src/Appwrite/Platform/Modules/Presences/HTTP/Action.php @@ -13,10 +13,10 @@ use Utopia\Database\Validator\Authorization; class Action extends PlatformAction { - public function setPermission(Document $document, ?array $permissions, Document $user, Authorization $authorization): Document + public function setPermission(Document $document, ?array $permissions, User $user, Authorization $authorization): Document { - $isAPIKey = User::isApp($authorization->getRoles()); - $isPrivilegedUser = User::isPrivileged($authorization->getRoles()); + $isAPIKey = $user->isApp($authorization->getRoles()); + $isPrivilegedUser = $user->isPrivileged($authorization->getRoles()); $allowedPermissions = [ Database::PERMISSION_READ, diff --git a/src/Appwrite/Platform/Modules/Presences/HTTP/Delete.php b/src/Appwrite/Platform/Modules/Presences/HTTP/Delete.php index f6af01de58..e6ce848a5a 100644 --- a/src/Appwrite/Platform/Modules/Presences/HTTP/Delete.php +++ b/src/Appwrite/Platform/Modules/Presences/HTTP/Delete.php @@ -30,7 +30,7 @@ class Delete extends Base ->setHttpPath('/v1/presences/:presenceId') ->desc('Delete presence') ->groups(['api', 'presences']) - ->label('scope', 'users.write') + ->label('scope', 'documents.write') ->label('sdk', new Method( namespace: 'presences', group: 'presences', diff --git a/src/Appwrite/Platform/Modules/Presences/HTTP/Get.php b/src/Appwrite/Platform/Modules/Presences/HTTP/Get.php index 240a2f7bf4..25e0f1ec81 100644 --- a/src/Appwrite/Platform/Modules/Presences/HTTP/Get.php +++ b/src/Appwrite/Platform/Modules/Presences/HTTP/Get.php @@ -29,7 +29,7 @@ class Get extends Base ->setHttpPath('/v1/presences/:presenceId') ->desc('Get presence') ->groups(['api', 'presences']) - ->label('scope', 'users.read') + ->label('scope', 'documents.read') ->label('sdk', new Method( namespace: 'presences', group: 'presences', diff --git a/src/Appwrite/Platform/Modules/Presences/HTTP/Update.php b/src/Appwrite/Platform/Modules/Presences/HTTP/Update.php index ac46e08cb9..304a62c8c7 100644 --- a/src/Appwrite/Platform/Modules/Presences/HTTP/Update.php +++ b/src/Appwrite/Platform/Modules/Presences/HTTP/Update.php @@ -34,7 +34,7 @@ class Update extends PresenceAction ->setHttpPath('/v1/presences/:presenceId') ->desc('Update presence') ->groups(['api', 'presences']) - ->label('scope', 'users.write') + ->label('scope', 'documents.write') ->label('sdk', new Method( namespace: 'presences', group: 'presences', @@ -70,11 +70,11 @@ class Update extends PresenceAction ?array $permissions, Response $response, Database $dbForProject, - Document $user, + User $user, Authorization $authorization ): void { - $isAPIKey = User::isApp($authorization->getRoles()); - $isPrivilegedUser = User::isPrivileged($authorization->getRoles()); + $isAPIKey = $user->isApp($authorization->getRoles()); + $isPrivilegedUser = $user->isPrivileged($authorization->getRoles()); if ($userId && !$isAPIKey && !$isPrivilegedUser) { throw new Exception(Exception::GENERAL_UNAUTHORIZED_SCOPE, 'userId is not allowed for non-API key and non-privileged users'); diff --git a/src/Appwrite/Platform/Modules/Presences/HTTP/Upsert.php b/src/Appwrite/Platform/Modules/Presences/HTTP/Upsert.php index f8019e7004..894e4c6cb4 100644 --- a/src/Appwrite/Platform/Modules/Presences/HTTP/Upsert.php +++ b/src/Appwrite/Platform/Modules/Presences/HTTP/Upsert.php @@ -40,7 +40,7 @@ class Upsert extends PresenceAction ->setHttpPath('/v1/presences/:presenceId') ->desc('Upsert presence') ->groups(['api', 'presences']) - ->label('scope', 'users.write') + ->label('scope', 'documents.write') ->label('sdk', new Method( namespace: 'presences', group: 'presences', @@ -77,11 +77,11 @@ class Upsert extends PresenceAction array $metadata, Response $response, Database $dbForProject, - Document $user, + User $user, Authorization $authorization ): void { - $isAPIKey = User::isApp($authorization->getRoles()); - $isPrivilegedUser = User::isPrivileged($authorization->getRoles()); + $isAPIKey = $user->isApp($authorization->getRoles()); + $isPrivilegedUser = $user->isPrivileged($authorization->getRoles()); if ($userId && !$isAPIKey && !$isPrivilegedUser) { throw new Exception(Exception::GENERAL_UNAUTHORIZED_SCOPE, "userId is not allowed for non-API key and non-privileged users"); } diff --git a/src/Appwrite/Platform/Modules/Presences/HTTP/XList.php b/src/Appwrite/Platform/Modules/Presences/HTTP/XList.php index aab3958bdb..18de610844 100644 --- a/src/Appwrite/Platform/Modules/Presences/HTTP/XList.php +++ b/src/Appwrite/Platform/Modules/Presences/HTTP/XList.php @@ -37,7 +37,7 @@ class XList extends Base ->setHttpPath('/v1/presences') ->desc('List presences') ->groups(['api', 'presences']) - ->label('scope', 'users.read') + ->label('scope', 'documents.read') ->label('sdk', new Method( namespace: 'presences', group: 'presences',