src/Entity/User.php line 13
<?phpnamespace App\Entity;use App\Repository\UserRepository;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\ORM\Mapping as ORM;use Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface;use Symfony\Component\Security\Core\User\UserInterface;#[ORM\Entity(repositoryClass: UserRepository::class)]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\Column(length: 50)]private ?string $prenom = null;#[ORM\Column(length: 50)]private ?string $nom = null;#[ORM\ManyToOne]private ?VilleFrance $ville = null;#[ORM\Column(length: 50)]private ?string $initiales = null;#[ORM\OneToMany(mappedBy: 'user', targetEntity: Camion::class)]private Collection $camions;#[ORM\OneToMany(mappedBy: 'user', targetEntity: CamionUser::class)]private Collection $camionUsers;#[ORM\ManyToOne]private ?VilleFrance $villeAttache = null;#[ORM\OneToMany(mappedBy: 'user', targetEntity: Documentation::class)]private Collection $documentations;#[ORM\OneToMany(mappedBy: 'user', targetEntity: CartePaiement::class)]private Collection $cartePaiements;#[ORM\Column(length: 10, nullable: true)]private ?string $matricule = null;#[ORM\Column]private ?int $actif = null;#[ORM\ManyToOne(inversedBy: 'users')]private ?SystemeClient $systemeClient = null;#[ORM\OneToMany(mappedBy: 'user', targetEntity: Absence::class)]private Collection $absences;#[ORM\OneToMany(mappedBy: 'user', targetEntity: PlanningReccurence::class)]private Collection $planningReccurences;#[ORM\Column]private ?int $carteClefRendu = null;#[ORM\Column]private ?int $rappelSms = null;#[ORM\Column(length: 255)]private ?string $telephone = null;#[ORM\OneToMany(mappedBy: 'user', targetEntity: InfoChauffeur::class)]private Collection $infoChauffeurs;#[ORM\OneToMany(mappedBy: 'user', targetEntity: InfoChauffeurDate::class)]private Collection $infoChauffeurDates;#[ORM\OneToMany(mappedBy: 'userUpdate', targetEntity: PlanningUpdateDateTime::class)]private Collection $planningUpdateDateTimes;#[ORM\OneToMany(mappedBy: 'user', targetEntity: HoraireExploit::class)]private Collection $no;#[ORM\Column(length: 20)]private ?string $telephonePro = null;//const MDPINFO = "8RLHJCl32uDf";const MDPINFO = "Cont@ctSolu555$";const USERINFO = "contact@solubac.fr";const HOSTINFO = "smtp.office365.com";//const HOSTINFO = "mail.infomaniak.ch";const PORTINFO = 587;const APIKEYGOOGLE = 'AIzaSyCyY3op2G-PX5ZD-UDY58jPKTJic1_y-rI';//const PORTINFO = 465;/*** User constructor.*/public function __construct(){$this->camions = new ArrayCollection();$this->camionUsers = new ArrayCollection();$this->documentations = new ArrayCollection();$this->cartePaiements = new ArrayCollection();$this->absences = new ArrayCollection();$this->planningReccurences = new ArrayCollection();$this->infoChauffeurs = new ArrayCollection();$this->infoChauffeurDates = new ArrayCollection();$this->planningUpdateDateTimes = new ArrayCollection();$this->no = 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);}/*** @see UserInterface*/public function getRoleAdmin(){$admin = false;foreach($this->roles as $role){if($role=="ROLE_ADMIN"){$admin = true;}}return $admin;}/*** @see UserInterface*/public function getRoleNotif(){$admin = false;foreach($this->roles as $role){if($role=="ROLE_NOTIF"){$admin = true;}}return $admin;}/*** @see UserInterface*/public function getRoleChauffeur(){$admin = false;foreach($this->roles as $role){if($role=="ROLE_CHAUFFEUR"){$admin = true;}}return $admin;}/*** @see UserInterface*/public function getRoleAnal(){$admin = false;foreach($this->roles as $role){if($role=="ROLE_ANAL"){$admin = true;}}return $admin;}/*** @see UserInterface*/public function getRoleTech(){$admin = false;foreach($this->roles as $role){if($role=="ROLE_TECH"){$admin = true;}}return $admin;}/*** @see UserInterface*/public function getRoleExpl(){$admin = false;foreach($this->roles as $role){if($role=="ROLE_EXPL"){$admin = true;}}return $admin;}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;}public function getPrenom(): ?string{return $this->prenom;}public function setPrenom(string $prenom): self{$this->prenom = $prenom;return $this;}public function getNom(): ?string{return $this->nom;}public function setNom(string $nom): self{$this->nom = $nom;return $this;}public function getVille(): ?VilleFrance{return $this->ville;}public function setVille(VilleFrance $ville): self{$this->ville = $ville;return $this;}/*** @return Collection<int, Camion>*/public function getCamions(): Collection{return $this->camions;}public function addCamion(Camion $camion): self{if (!$this->camions->contains($camion)) {$this->camions->add($camion);$camion->setUser($this);}return $this;}public function removeCamion(Camion $camion): self{if ($this->camions->removeElement($camion)) {// set the owning side to null (unless already changed)if ($camion->getUser() === $this) {$camion->setUser(null);}}return $this;}/*** @return Collection<int, CamionUser>*/public function getCamionUsers(): Collection{return $this->camionUsers;}public function addCamionUser(CamionUser $camionUser): self{if (!$this->camionUsers->contains($camionUser)) {$this->camionUsers->add($camionUser);$camionUser->setUser($this);}return $this;}public function removeCamionUser(CamionUser $camionUser): self{if ($this->camionUsers->removeElement($camionUser)) {// set the owning side to null (unless already changed)if ($camionUser->getUser() === $this) {$camionUser->setUser(null);}}return $this;}public function __toString(){return $this->getPrenom().' '.$this->getNom();}public function getInitiales(): ?string{return $this->initiales;}public function setInitiales(string $initiales): self{$this->initiales = $initiales;return $this;}public function getVilleAttache(): ?VilleFrance{return $this->villeAttache;}public function setVilleAttache(VilleFrance $villeAttache): self{$this->villeAttache = $villeAttache;return $this;}/*** @return Collection<int, Documentation>*/public function getDocumentations(): Collection{return $this->documentations;}public function addDocumentation(Documentation $documentation): self{if (!$this->documentations->contains($documentation)) {$this->documentations->add($documentation);$documentation->setUser($this);}return $this;}public function removeDocumentation(Documentation $documentation): self{if ($this->documentations->removeElement($documentation)) {// set the owning side to null (unless already changed)if ($documentation->getUser() === $this) {$documentation->setUser(null);}}return $this;}public function getMatricule(): ?string{return $this->matricule;}public function setMatricule(?string $matricule): self{$this->matricule = $matricule;return $this;}public function getActif(): ?int{return $this->actif;}public function setActif(int $actif): self{$this->actif = $actif;return $this;}public function getSystemeClient(): ?SystemeClient{return $this->systemeClient;}public function setSystemeClient(?SystemeClient $systemeClient): self{$this->systemeClient = $systemeClient;return $this;}/*** @return Collection<int, Absence>*/public function getAbsences(): Collection{return $this->absences;}public function addAbsence(Absence $absence): self{if (!$this->absences->contains($absence)) {$this->absences->add($absence);$absence->setUser($this);}return $this;}public function removeAbsence(Absence $absence): self{if ($this->absences->removeElement($absence)) {// set the owning side to null (unless already changed)if ($absence->getUser() === $this) {$absence->setUser(null);}}return $this;}/*** @return Collection<int, PlanningReccurence>*/public function getPlanningReccurences(): Collection{return $this->planningReccurences;}public function addPlanningReccurence(PlanningReccurence $planningReccurence): self{if (!$this->planningReccurences->contains($planningReccurence)) {$this->planningReccurences->add($planningReccurence);$planningReccurence->setUser($this);}return $this;}public function removePlanningReccurence(PlanningReccurence $planningReccurence): self{if ($this->planningReccurences->removeElement($planningReccurence)) {// set the owning side to null (unless already changed)if ($planningReccurence->getUser() === $this) {$planningReccurence->setUser(null);}}return $this;}public function getCarteClefRendu(): ?int{return $this->carteClefRendu;}public function setCarteClefRendu(int $carteClefRendu): self{$this->carteClefRendu = $carteClefRendu;return $this;}public function getRappelSms(): ?int{return $this->rappelSms;}public function setRappelSms(int $rappelSms): self{$this->rappelSms = $rappelSms;return $this;}public function getTelephone(): ?string{return $this->telephone;}public function setTelephone(string $telephone): self{$this->telephone = $telephone;return $this;}/*** @return Collection<int, InfoChauffeur>*/public function getInfoChauffeurs(): Collection{return $this->infoChauffeurs;}public function addInfoChauffeur(InfoChauffeur $infoChauffeur): self{if (!$this->infoChauffeurs->contains($infoChauffeur)) {$this->infoChauffeurs->add($infoChauffeur);$infoChauffeur->setUser($this);}return $this;}public function removeInfoChauffeur(InfoChauffeur $infoChauffeur): self{if ($this->infoChauffeurs->removeElement($infoChauffeur)) {// set the owning side to null (unless already changed)if ($infoChauffeur->getUser() === $this) {$infoChauffeur->setUser(null);}}return $this;}public function getInfoChauffeur(){$return = null;if(!empty($this->infoChauffeurs)){foreach($this->infoChauffeurs as $infoChauffeur){$return = $infoChauffeur;}}return $return;}/*** @return Collection<int, InfoChauffeurDate>*/public function getInfoChauffeurDates(): Collection{return $this->infoChauffeurDates;}public function addInfoChauffeurDate(InfoChauffeurDate $infoChauffeurDate): self{if (!$this->infoChauffeurDates->contains($infoChauffeurDate)) {$this->infoChauffeurDates->add($infoChauffeurDate);$infoChauffeurDate->setUser($this);}return $this;}public function removeInfoChauffeurDate(InfoChauffeurDate $infoChauffeurDate): self{if ($this->infoChauffeurDates->removeElement($infoChauffeurDate)) {// set the owning side to null (unless already changed)if ($infoChauffeurDate->getUser() === $this) {$infoChauffeurDate->setUser(null);}}return $this;}/*** @return Collection<int, PlanningUpdateDateTime>*/public function getPlanningUpdateDateTimes(): Collection{return $this->planningUpdateDateTimes;}public function addPlanningUpdateDateTime(PlanningUpdateDateTime $planningUpdateDateTime): static{if (!$this->planningUpdateDateTimes->contains($planningUpdateDateTime)) {$this->planningUpdateDateTimes->add($planningUpdateDateTime);$planningUpdateDateTime->setUserUpdate($this);}return $this;}public function removePlanningUpdateDateTime(PlanningUpdateDateTime $planningUpdateDateTime): static{if ($this->planningUpdateDateTimes->removeElement($planningUpdateDateTime)) {// set the owning side to null (unless already changed)if ($planningUpdateDateTime->getUserUpdate() === $this) {$planningUpdateDateTime->setUserUpdate(null);}}return $this;}/*** @return Collection<int, HoraireExploit>*/public function getNo(): Collection{return $this->no;}public function addNo(HoraireExploit $no): static{if (!$this->no->contains($no)) {$this->no->add($no);$no->setUser($this);}return $this;}public function removeNo(HoraireExploit $no): static{if ($this->no->removeElement($no)) {// set the owning side to null (unless already changed)if ($no->getUser() === $this) {$no->setUser(null);}}return $this;}public function getTelephonePro(): ?string{return $this->telephonePro;}public function setTelephonePro(string $telephonePro): static{$this->telephonePro = $telephonePro;return $this;}}