src/Entity/User.php line 21
<?phpnamespace App\Entity;use App\Repository\UserRepository;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;use Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface;use Symfony\Component\Security\Core\User\UserInterface;use Doctrine\ORM\Mapping\DiscriminatorMap;use Doctrine\ORM\Mapping\InheritanceType;use Doctrine\ORM\Mapping\DiscriminatorColumn;#[ORM\Entity(repositoryClass: UserRepository::class)]#[InheritanceType("JOINED")]#[DiscriminatorColumn(name: "type", type: "string")]#[UniqueEntity(fields: ['email'], message: 'Il existe déjà un compte avec cette email')]class User implements UserInterface, PasswordAuthenticatedUserInterface{#[ORM\Id]#[ORM\GeneratedValue]#[ORM\Column]private ?int $id = null;#[ORM\Column(length: 180, unique: true)]private ?string $email = null;#[ORM\Column]private array $roles = [];/*** @var string The hashed password*/#[ORM\Column]private ?string $password = null;#[ORM\OneToMany(targetEntity: Formation::class, mappedBy: "formateur")]private Collection $formations;#[ORM\Column(length: 70, nullable: true)]private ?string $firstName = null;#[ORM\Column(length: 70, nullable: true)]private ?string $lastName = null;#[ORM\Column(type: Types::TEXT, nullable: true)]private ?string $phone = null;#[ORM\Column(length: 70, nullable: true)]private ?string $functionFormateur = null;#[ORM\Column(type: Types::TEXT, nullable: true)]private ?string $linkFormateur = null;#[ORM\Column(type: Types::TEXT, nullable: true)]private ?string $signature = null;#[ORM\Column(name: 'trainer_attendance_date', type: Types::DATE_MUTABLE, nullable: true)]private ?\DateTimeInterface $trainerAttendanceDate = null;#[ORM\Column(name: 'trainer_attendance_period', length: 100, nullable: true)]private ?string $trainerAttendancePeriod = null;#[ORM\Column(name: 'trainer_attendance_company', length: 255, nullable: true)]private ?string $trainerAttendanceCompany = null;#[ORM\Column(name: 'trainer_attendance_comments', type: Types::TEXT, nullable: true)]private ?string $trainerAttendanceComments = null;#[ORM\Column(name: 'trainer_attendance_signed_at', type: Types::DATETIME_MUTABLE, nullable: true)]private ?\DateTimeInterface $trainerAttendanceSignedAt = null;#[ORM\Column(type: 'boolean', nullable: true)]private ?bool $isSigNumeric = true;public function __construct(){$this->formations = new ArrayCollection();}public function getId(): ?int{return $this->id;}public function getEmail(): ?string{return $this->email;}public function setEmail(string $email): self{$this->email = $email;return $this;}/*** A visual identifier that represents this user.** @see UserInterface*/public function getUserIdentifier(): string{return (string) $this->email;}/*** @see UserInterface*/public function getRoles(): array{$roles = $this->roles;// guarantee every user at least has ROLE_USER$roles[] = 'ROLE_USER';return array_unique($roles);}public function setRoles(array $roles): self{$this->roles = $roles;return $this;}/*** @see PasswordAuthenticatedUserInterface*/public function getPassword(): string{return $this->password;}public function setPassword(string $password): self{$this->password = $password;return $this;}/*** @see UserInterface*/public function eraseCredentials(){// If you store any temporary, sensitive data on the user, clear it here// $this->plainPassword = null;}/*** @return Collection<int, Formation>*/public function getFormation(): Collection{return $this->formations;}public function addFormation(Formation $formations): self{if (!$this->formations->contains($formations)) {$this->formations->add($formations);}return $this;}public function removeFormation(Formation $formations): self{$this->formations->removeElement($formations);return $this;}public function getFirstName(): ?string{return $this->firstName;}public function setFirstName(?string $firstName): self{$this->firstName = $firstName;return $this;}public function getLastName(): ?string{return $this->lastName;}public function setLastName(?string $lastName): self{$this->lastName = $lastName;return $this;}public function getPhone(): ?string{return $this->phone;}public function setPhone(?string $phone): self{$this->phone = $phone;return $this;}public function getFunctionFormateur(): ?string{return $this->functionFormateur;}public function setFunctionFormateur(?string $functionFormateur): self{$this->functionFormateur = $functionFormateur;return $this;}public function getLinkFormateur(): ?string{return $this->linkFormateur;}public function setLinkFormateur(?string $linkFormateur): self{$this->linkFormateur = $linkFormateur;return $this;}public function getSignature(): ?string{return $this->signature;}public function setSignature(?string $signature): self{$this->signature = $signature;return $this;}public function getTrainerAttendanceDate(): ?\DateTimeInterface{return $this->trainerAttendanceDate;}public function setTrainerAttendanceDate(?\DateTimeInterface $date): self{$this->trainerAttendanceDate = $date;return $this;}public function getTrainerAttendancePeriod(): ?string{return $this->trainerAttendancePeriod;}public function setTrainerAttendancePeriod(?string $period): self{$this->trainerAttendancePeriod = $period;return $this;}public function getTrainerAttendanceCompany(): ?string{return $this->trainerAttendanceCompany;}public function setTrainerAttendanceCompany(?string $company): self{$this->trainerAttendanceCompany = $company;return $this;}public function getTrainerAttendanceComments(): ?string{return $this->trainerAttendanceComments;}public function setTrainerAttendanceComments(?string $comments): self{$this->trainerAttendanceComments = $comments;return $this;}public function getTrainerAttendanceSignedAt(): ?\DateTimeInterface{return $this->trainerAttendanceSignedAt;}public function setTrainerAttendanceSignedAt(?\DateTimeInterface $signedAt): self{$this->trainerAttendanceSignedAt = $signedAt;return $this;}/*** @return bool|null*/public function getIsSigNumeric(): ?bool{return $this->isSigNumeric;}/*** @param bool $isSigNumeric* @return $this*/public function setIsSigNumeric(bool $isSigNumeric): self{$this->isSigNumeric = $isSigNumeric;return $this;}}