From 381a26fa4c34643338efbe173f7d89114d67b676 Mon Sep 17 00:00:00 2001 From: Jake Barnby Date: Wed, 14 Sep 2022 00:44:55 +1200 Subject: [PATCH] Assign verified/unverified role to users --- src/Appwrite/Auth/Auth.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/Appwrite/Auth/Auth.php b/src/Appwrite/Auth/Auth.php index c290d19862..f4cea0166e 100644 --- a/src/Appwrite/Auth/Auth.php +++ b/src/Appwrite/Auth/Auth.php @@ -9,6 +9,7 @@ use Appwrite\Auth\Hash\Phpass; use Appwrite\Auth\Hash\Scrypt; use Appwrite\Auth\Hash\Scryptmodified; use Appwrite\Auth\Hash\Sha; +use Utopia\Database\Database; use Utopia\Database\Document; use Utopia\Database\DateTime; use Utopia\Database\Role; @@ -421,6 +422,17 @@ class Auth if ($user->getId()) { $roles[] = Role::user($user->getId())->toString(); $roles[] = Role::users()->toString(); + + $emailVerified = $user->getAttribute('emailVerification', false); + $phoneVerified = $user->getAttribute('phoneVerification', false); + + if ($emailVerified || $phoneVerified) { + $roles[] = Role::user($user->getId(), Database::DIMENSION_VERIFIED)->toString(); + $roles[] = Role::users(Database::DIMENSION_VERIFIED)->toString(); + } else { + $roles[] = Role::user($user->getId(), Database::DIMENSION_UNVERIFIED)->toString(); + $roles[] = Role::users(Database::DIMENSION_UNVERIFIED)->toString(); + } } else { return [Role::guests()->toString()]; }