Updated User Roles to use a enum.

This commit is contained in:
2024-10-08 21:28:35 +02:00
parent 69bc2630fd
commit e93a5ff3a9
2 changed files with 14 additions and 2 deletions
+3 -2
View File
@@ -2,6 +2,7 @@
namespace App\Entity; namespace App\Entity;
use App\Enum\UserRoleEnum;
use App\Repository\UserRepository; use App\Repository\UserRepository;
use Doctrine\ORM\Mapping as ORM; use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface; use Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface;
@@ -73,7 +74,7 @@ class User implements UserInterface, PasswordAuthenticatedUserInterface
{ {
$roles = $this->roles; $roles = $this->roles;
// guarantee every user at least has ROLE_USER // guarantee every user at least has ROLE_USER
$roles[] = 'ROLE_USER'; $roles[] = UserRoleEnum::ROLE_USER->value;
return array_unique($roles); return array_unique($roles);
} }
@@ -122,6 +123,6 @@ class User implements UserInterface, PasswordAuthenticatedUserInterface
public function eraseCredentials(): void public function eraseCredentials(): void
{ {
// If you store any temporary, sensitive data on the user, clear it here // If you store any temporary, sensitive data on the user, clear it here
// $this->plainPassword = null; $this->plainPassword = null;
} }
} }
+11
View File
@@ -0,0 +1,11 @@
<?php
namespace App\Enum;
enum UserRoleEnum: string
{
case ROLE_USER = 'ROLE_USER';
case ROLE_ADMIN = 'ROLE_ADMIN';
case ROLE_SUPERADMIN = 'ROLE_SUPERADMIN';
}