Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace AppBundle\Entity;
- use Doctrine\ORM\Mapping as ORM;
- use Symfony\Component\Security\Core\User\UserInterface;
- use Symfony\Component\Validator\Constraints as Assert;
- use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
- /**
- * Class User
- * @package AppBundle\Entity
- * @ORM\Entity(repositoryClass="AppBundle\Repository\UserRepository")
- * @ORM\Table(name="user")
- * @UniqueEntity(fields={"userName"}, message="user.error.nametaken", )
- */
- class User implements UserInterface, \Serializable
- {
- /**
- * @var integer
- * @ORM\Column(name="id", type="integer")
- * @ORM\GeneratedValue(strategy="AUTO")
- * @ORM\Id()
- */
- private $id;
- /**
- * @var \DateTime
- * @ORM\Column(name="created", type="datetimetz")
- */
- private $created;
- /**
- * @var string
- * @ORM\Column(name="user_name", unique=true)
- * @Assert\NotBlank(message="user.error.username")
- */
- private $userName;
- /**
- * @var string
- * @ORM\Column(name="email")
- * @Assert\NotBlank(message="user.error.email")
- * @Assert\Email(message="user.error.email.type", checkHost=true, checkMX=true)
- */
- private $email;
- /**
- * @var string
- * @ORM\Column(name="password")
- * @Assert\NotBlank(message="user.error.password")
- * @Assert\Length(min=8, minMessage="user.error.password")
- */
- private $password;
- /**
- * @var boolean
- * @ORM\Column(name="is_active", type="boolean")
- */
- private $active;
- /**
- * @var string
- * @ORM\Column(name="active_token", nullable=true)
- */
- private $activeToken;
- /**
- * @var string
- * @ORM\Column(name="password_forgot_token", nullable=true)
- */
- private $passwordForgotToken;
- /**
- * @var string
- * @ORM\Column(name="user_type")
- */
- private $type;
- const TYPE_APPLICANT = 'applicant';
- const TYPE_EMPLOYEE = 'employee';
- /**
- * @var string
- * @ORM\Column(name="locale")
- * @Assert\NotBlank(message="user.error.locale")
- */
- private $locale;
- const LOCALE_DE = 'de';
- const LOCALE_EN = 'en';
- public function __construct()
- {
- $this->created = new \DateTime();
- $this->active = false;
- }
- /**
- * @return int
- */
- public function getId()
- {
- return $this->id;
- }
- /**
- * @param int $id
- */
- public function setId($id)
- {
- $this->id = $id;
- }
- /**
- * @return \DateTime
- */
- public function getCreated()
- {
- return $this->created;
- }
- /**
- * @param \DateTime $created
- */
- public function setCreated($created)
- {
- $this->created = $created;
- }
- /**
- * @return string
- */
- public function getUserName()
- {
- return $this->userName;
- }
- /**
- * @param string $userName
- */
- public function setUserName($userName)
- {
- $this->userName = $userName;
- }
- /**
- * @return string
- */
- public function getEmail()
- {
- return $this->email;
- }
- /**
- * @param string $email
- */
- public function setEmail($email)
- {
- $this->email = $email;
- }
- /**
- * @return string
- */
- public function getPassword()
- {
- return $this->password;
- }
- /**
- * @param string $password
- */
- public function setPassword($password)
- {
- $this->password = $password;
- }
- /**
- * @return bool
- */
- public function isActive()
- {
- return $this->active;
- }
- /**
- * @param bool $active
- */
- public function setActive($active)
- {
- $this->active = $active;
- }
- /**
- * @return string
- */
- public function getActiveToken()
- {
- return $this->activeToken;
- }
- /**
- * @param string $activeToken
- */
- public function setActiveToken($activeToken)
- {
- $this->activeToken = $activeToken;
- }
- /**
- * @return string
- */
- public function getPasswordForgotToken()
- {
- return $this->passwordForgotToken;
- }
- /**
- * @param string $passwordForgotToken
- */
- public function setPasswordForgotToken($passwordForgotToken)
- {
- $this->passwordForgotToken = $passwordForgotToken;
- }
- /**
- * @return string
- */
- public function getType()
- {
- return $this->type;
- }
- /**
- * @param string $type
- */
- public function setType($type)
- {
- $this->type = $type;
- }
- /**
- * @return string
- */
- public function getLocale()
- {
- return $this->locale;
- }
- /**
- * @param string $locale
- */
- public function setLocale($locale)
- {
- $this->locale = $locale;
- }
- public function getSalt()
- {
- return null;
- }
- public function getRoles()
- {
- if ($this->type == self::TYPE_APPLICANT) {
- return ['ROLE_APPLICANT'];
- } else if($this->type == self::TYPE_EMPLOYEE) {
- return ['ROLE_EMPLOYEE'];
- }
- }
- public function eraseCredentials()
- {
- }
- public function serialize()
- {
- return serialize([
- $this->id,
- $this->userName,
- $this->password
- ]);
- }
- public function unserialize($serialized)
- {
- list (
- $this->id,
- $this->username,
- $this->password,
- ) = unserialize($serialized);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement