| Current Path : /var/www/v3.cesa.co.za/src/UserBundle/Entity/ |
| Current File : /var/www/v3.cesa.co.za/src/UserBundle/Entity/UserLogin.php |
<?php
namespace App\UserBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\LegacyPasswordAuthenticatedUserInterface;
use Symfony\Component\Security\Core\User\UserInterface;
/**
* Member portal login (user_login table).
*
* @ORM\Table(name="user_login")
* @ORM\Entity(repositoryClass="App\UserBundle\Repository\UserLoginRepository")
*/
class UserLogin implements UserInterface, LegacyPasswordAuthenticatedUserInterface
{
/** @var list<string>|null */
private ?array $roles = null;
private ?int $memberFirmId = null;
private bool $memberFirmPresent = false;
/**
* @ORM\Id
* @ORM\Column(name="id", type="integer")
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
private ?int $id = null;
/**
* Maps to Contacts.ContactsID / MemberContacts.ContactID (member portal).
*
* @ORM\Column(name="contact_id", type="integer", nullable=true)
*/
private ?int $contactId = null;
/**
* @ORM\Column(name="username", type="string", length=12, nullable=true)
*/
private ?string $username = null;
/**
* @ORM\Column(name="password", type="string", length=50, nullable=true)
*/
private ?string $password = null;
/**
* @ORM\Column(name="salt", type="string", length=50, nullable=true)
*/
private ?string $salt = null;
public function getId(): ?int
{
return $this->id;
}
public function getContactId(): ?int
{
return $this->contactId;
}
public function setContactId(int $contactId): static
{
$this->contactId = $contactId;
return $this;
}
public function getUsername(): ?string
{
return $this->username;
}
public function setUsername(string $username): static
{
$this->username = $username;
return $this;
}
public function getPassword(): ?string
{
return $this->password;
}
public function setPassword(string $password): static
{
$this->password = $password;
return $this;
}
public function getSalt(): ?string
{
return $this->salt;
}
public function setSalt(?string $salt): static
{
$this->salt = $salt;
return $this;
}
public function getUserIdentifier(): string
{
return (string) $this->username;
}
/**
* @param list<string> $roles
*/
public function setResolvedRoles(array $roles): void
{
$this->roles = $roles;
}
/**
* @return list<string>
*/
public function getRoles(): array
{
return $this->roles ?? ['NONE'];
}
public function getGranted(string $roleName): bool
{
return in_array($roleName, $this->getRoles(), true);
}
public function setMemberFirmContext(?int $memberFirmId, bool $present): void
{
$this->memberFirmId = $memberFirmId;
$this->memberFirmPresent = $present;
}
public function getMemberFirmId(): ?int
{
return $this->memberFirmId;
}
public function hasMemberFirm(): bool
{
return $this->memberFirmPresent && $this->memberFirmId !== null;
}
public function eraseCredentials(): void
{
}
public function __toString(): string
{
return (string) $this->username;
}
}