src/Entity/Invitation.php line 13
<?phpnamespace App\Entity;use App\Kimia;use App\Repository\InvitationRepository;use DateTimeImmutable;use DateTimeInterface;use Doctrine\DBAL\Types\Types;use Doctrine\ORM\Mapping as ORM;#[ORM\Entity(repositoryClass: InvitationRepository::class)]class Invitation{#[ORM\Id]#[ORM\GeneratedValue]#[ORM\Column]private ?int $id = null;#[ORM\Column(length: 180)]private ?string $email = null;#[ORM\Column(type: Types::TEXT)]private ?string $message = null;#[ORM\Column(length: 14)]private ?string $code;#[ORM\Column(length: 1, options: ["default" => Kimia::STATUS_INVITED])]private ?int $status;#[ORM\Column(type: Types::DATETIME_MUTABLE)]private ?DateTimeInterface $sentAt = null;#[ORM\Column(type: Types::DATETIME_IMMUTABLE)]private ?DateTimeImmutable $expiresAt = null;#[ORM\ManyToOne(inversedBy: 'invitations')]private ?Establishment $establishment = null;public function __construct(){$this->code = substr(uniqid(), -14);$this->status = Kimia::STATUS_INVITED;}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;}public function getMessage(): ?string{return $this->message;}public function setMessage(string $message): self{$this->message = $message;return $this;}public function getCode(): ?string{return $this->code;}public function setCode(string $code): self{$this->code = $code;return $this;}public function getStatus(): ?int{return $this->status;}public function getStatusView(): ?string{$status = $this->getStatus() === Kimia::STATUS_ACCEPTED ? 'success' : ($this->getStatus() === Kimia::STATUS_INVITED ? 'warning' : 'danger');$text = $this->getStatus() === Kimia::STATUS_ACCEPTED ? 'Acceptée' : ($this->getStatus() === Kimia::STATUS_INVITED ? 'Invitée' : ($this->getStatus() === Kimia::STATUS_DECLINED ? 'Rejetée' : ($this->getStatus() === Kimia::STATUS_CANCEL ? 'Annulée' : 'Echec')));return "<span class='badge badge-soft-{$status}'>$text</span>";}public function setStatus(int $status): self{$this->status = $status;return $this;}public function getSentAt(): ?DateTimeInterface{return $this->sentAt;}public function setSentAt(DateTimeInterface $sentAt): self{$this->sentAt = $sentAt;return $this;}public function getExpiresAt(): ?DateTimeImmutable{return $this->expiresAt;}public function setExpiresAt(DateTimeImmutable $expiresAt): self{$this->expiresAt = $expiresAt;return $this;}public function getEstablishment(): ?Establishment{return $this->establishment;}public function setEstablishment(?Establishment $establishment): self{$this->establishment = $establishment;return $this;}}