Advertisement
Guest User

Untitled

a guest
Feb 13th, 2018
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 5.07 KB | None | 0 0
  1. <?php
  2.  
  3. namespace MyBlogBundle\Entity;
  4.  
  5. use Doctrine\Common\Collections\ArrayCollection;
  6. use Doctrine\Common\Collections\Collection;
  7. use Doctrine\ORM\Mapping as ORM;
  8. use Serializable;
  9. use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface;
  10. use Symfony\Component\Security\Core\User\UserInterface;
  11.  
  12. /**
  13.  * User
  14.  *
  15.  * @ORM\Table(name="users")
  16.  * @ORM\Entity(repositoryClass="MyBlogBundle\Repository\UserRepository")
  17.  */
  18. class User implements UserInterface, Serializable
  19. {
  20.     /**
  21.      * @var int
  22.      *
  23.      * @ORM\Column(name="id", type="integer")
  24.      * @ORM\Id
  25.      * @ORM\GeneratedValue(strategy="AUTO")
  26.      */
  27.     private $id;
  28.  
  29.     /**
  30.      * @var string
  31.      *
  32.      * @ORM\Column(name="username", type="string", length=255, unique=true)
  33.      */
  34.     private $username;
  35.  
  36.     /**
  37.      * @var string
  38.      *
  39.      * @ORM\Column(name="password", type="string", length=255)
  40.      */
  41.     private $password;
  42.  
  43.     /**
  44.      * @var string
  45.      *
  46.      * @ORM\Column(name="email", type="string", length=255, unique=true)
  47.      */
  48.     private $email;
  49.  
  50.     /**
  51.      * @var string
  52.      *
  53.      * @ORM\Column(name="fullName", type="string", length=255)
  54.      */
  55.     private $fullName;
  56.  
  57.     /**
  58.      * @var string
  59.      *
  60.      * @ORM\Column(name="age", type="string", length=255)
  61.      */
  62.     private $age;
  63.  
  64.     /**
  65.      * @var string
  66.      */
  67.     private $plainPassword;
  68.  
  69.     /**
  70.      * @var Role
  71.      * @ORM\ManyToMany(targetEntity="MyBlogBundle\Entity\Role")
  72.      * @ORM\JoinTable(name="users_roles",
  73.      *      joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")},
  74.      *      inverseJoinColumns={@ORM\JoinColumn(name="role_id", referencedColumnName="id")})
  75.      */
  76.     private $roles;
  77.  
  78.     /**
  79.      * User constructor.
  80.      */
  81.     public function __construct()
  82.     {
  83.         $this->roles = new ArrayCollection();
  84.     }
  85.  
  86.     /**
  87.      * @return string
  88.      */
  89.     public function getPlainPassword(): ?string
  90.     {
  91.         return $this->plainPassword;
  92.     }
  93.  
  94.     /**
  95.      * @param string $plainPassword
  96.      */
  97.     public function setPlainPassword(string $plainPassword)
  98.     {
  99.         $this->plainPassword = $plainPassword;
  100.     }
  101.  
  102.  
  103.     /**
  104.      * Get id
  105.      *
  106.      * @return int
  107.      */
  108.     public function getId()
  109.     {
  110.         return $this->id;
  111.     }
  112.  
  113.     /**
  114.      * Set username
  115.      *
  116.      * @param string $username
  117.      *
  118.      * @return User
  119.      */
  120.     public function setUsername($username)
  121.     {
  122.         $this->username = $username;
  123.  
  124.         return $this;
  125.     }
  126.  
  127.     /**
  128.      * Get username
  129.      *
  130.      * @return string
  131.      */
  132.     public function getUsername()
  133.     {
  134.         return $this->username;
  135.     }
  136.  
  137.     /**
  138.      * Set password
  139.      *
  140.      * @param string $password
  141.      *
  142.      * @return User
  143.      */
  144.     public function setPassword($password)
  145.     {
  146.         $this->password = $password;
  147.  
  148.         return $this;
  149.     }
  150.  
  151.     /**
  152.      * Get password
  153.      *
  154.      * @return string
  155.      */
  156.     public function getPassword()
  157.     {
  158.         return $this->password;
  159.     }
  160.  
  161.     /**
  162.      * Set email
  163.      *
  164.      * @param string $email
  165.      *
  166.      * @return User
  167.      */
  168.     public function setEmail($email)
  169.     {
  170.         $this->email = $email;
  171.  
  172.     }
  173.  
  174.     /**
  175.      * Get email
  176.      *
  177.      * @return string
  178.      */
  179.     public function getEmail()
  180.     {
  181.         return $this->email;
  182.     }
  183.  
  184.     /**
  185.      * Set fullName
  186.      *
  187.      * @param string $fullName
  188.      *
  189.      * @return User
  190.      */
  191.     public function setFullName($fullName)
  192.     {
  193.         $this->fullName = $fullName;
  194.  
  195.         return $this;
  196.     }
  197.  
  198.     /**
  199.      * Get fullName
  200.      *
  201.      * @return string
  202.      */
  203.     public function getFullName()
  204.     {
  205.         return $this->fullName;
  206.     }
  207.  
  208.     /**
  209.      * Set age
  210.      *
  211.      * @param string $age
  212.      *
  213.      * @return User
  214.      */
  215.     public function setAge($age)
  216.     {
  217.         $this->age = $age;
  218.  
  219.         return $this;
  220.     }
  221.  
  222.     /**
  223.      * Get age
  224.      *
  225.      * @return string
  226.      */
  227.     public function getAge()
  228.     {
  229.         return $this->age;
  230.     }
  231.  
  232.     /**
  233.      * @param array $roles
  234.      * @return $this
  235.      */
  236.     public function setRoles(array $roles)
  237.     {
  238.         $this->roles = $roles;
  239.  
  240.         return $this;
  241.     }
  242.  
  243.     public function getRoles()
  244.     {
  245.         $roles = [];
  246.         foreach ($this->roles as $role){
  247.             $roles[] = $role->getName();
  248.         }
  249.         return $roles;
  250.     }
  251.  
  252.     public function getSalt()
  253.     {
  254.         // TODO: Implement getSalt() method.
  255.     }
  256.  
  257.     public function eraseCredentials()
  258.     {
  259.         // TODO: Implement eraseCredentials() method.
  260.     }
  261.  
  262.     public function serialize()
  263.     {
  264.         return serialize([$this->getId(),
  265.                          $this->getUsername(),
  266.                          $this->getPassword()]);
  267.     }
  268.  
  269.     public function unserialize($serialized)
  270.     {
  271.         list(
  272.              $this->id,
  273.              $this->username,
  274.              $this->password
  275.             ) = unserialize($serialized);
  276.     }
  277.  
  278. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement