src/Entity/MailTemplate.php line 14

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Constants\MailEventConstants;
  4. use Doctrine\ORM\Mapping as ORM;
  5. use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
  6. use Symfony\Component\Validator\Constraints as Assert;
  7. #[UniqueEntity(fields: ['event'])]
  8. #[ORM\Entity(repositoryClass\App\Repository\MailTemplateRepository::class)]
  9. #[ORM\Table(name'mail_template')]
  10. #[ORM\UniqueConstraint(columns: ['event'])]
  11. class MailTemplate
  12. {
  13.     /**
  14.      * @var int
  15.      */
  16.     #[ORM\Column(name'id'type'integer')]
  17.     #[ORM\Id]
  18.     #[ORM\GeneratedValue(strategy'AUTO')]
  19.     private $id;
  20.     /**
  21.      * @var string
  22.      */
  23.     #[Assert\NotNull]
  24.     #[Assert\Email(message"The email '{{ value }}' is not a valid email.")]
  25.     #[ORM\Column(name'from_email'type'string'length255)]
  26.     private $fromEmail;
  27.     /**
  28.      * @var string
  29.      */
  30.     #[Assert\NotNull]
  31.     #[ORM\Column(name'from_name'type'string'length255)]
  32.     private $fromName;
  33.     /**
  34.      * @var string
  35.      */
  36.     #[ORM\Column(name'admin_email'type'string'length255nullabletrue)]
  37.     private $adminEmail;
  38.     /**
  39.      * @var int
  40.      */
  41.     #[Assert\NotNull]
  42.     #[ORM\Column(name'event'type'integer')]
  43.     private $event;
  44.     /**
  45.      * @var string
  46.      */
  47.     #[ORM\Column(name'subject'type'string'length191)]
  48.     private $subject;
  49.     /**
  50.      * @var string
  51.      */
  52.     #[Assert\NotNull(message'field can not be empty')]
  53.     #[ORM\Column(name'body'type'text')]
  54.     private $body;
  55.     #[Assert\NotNull(message'field can not be empty')]
  56.     #[ORM\Column(name'plain_body'type'text')]
  57.     private ?string $plainBody null;
  58.     /**
  59.      * Get id.
  60.      *
  61.      * @return int
  62.      */
  63.     public function getId()
  64.     {
  65.         return $this->id;
  66.     }
  67.     /**
  68.      * Set fromEmail.
  69.      *
  70.      * @param string $fromEmail
  71.      *
  72.      * @return MailTemplate
  73.      */
  74.     public function setFromEmail($fromEmail): static
  75.     {
  76.         $this->fromEmail $fromEmail;
  77.         return $this;
  78.     }
  79.     /**
  80.      * Get fromEmail.
  81.      *
  82.      * @return string
  83.      */
  84.     public function getFromEmail()
  85.     {
  86.         return $this->fromEmail;
  87.     }
  88.     /**
  89.      * Set fromName.
  90.      *
  91.      * @param string $fromName
  92.      *
  93.      * @return MailTemplate
  94.      */
  95.     public function setFromName($fromName): static
  96.     {
  97.         $this->fromName $fromName;
  98.         return $this;
  99.     }
  100.     /**
  101.      * Get fromName.
  102.      *
  103.      * @return string
  104.      */
  105.     public function getFromName()
  106.     {
  107.         return $this->fromName;
  108.     }
  109.     /**
  110.      * Set adminEmail.
  111.      *
  112.      * @param string $adminEmail
  113.      *
  114.      * @return MailTemplate
  115.      */
  116.     public function setAdminEmail($adminEmail): static
  117.     {
  118.         $this->adminEmail $adminEmail;
  119.         return $this;
  120.     }
  121.     /**
  122.      * Get adminEmail.
  123.      *
  124.      * @return mixed
  125.      */
  126.     public function getAdminEmail()
  127.     {
  128.         return $this->adminEmail;
  129.     }
  130.     /**
  131.      * Set event.
  132.      *
  133.      * @param int $event
  134.      *
  135.      * @return MailTemplate
  136.      */
  137.     public function setEvent(int $event): static
  138.     {
  139.         $this->event $event;
  140.         return $this;
  141.     }
  142.     public function getEventLabel(): string
  143.     {
  144.         $events MailEventConstants::loadValues();
  145.         return $events[$this->event] ?? (string)$this->event;
  146.     }
  147.     /**
  148.      * Get event.
  149.      *
  150.      * @return int
  151.      */
  152.     public function getEvent()
  153.     {
  154.         return $this->event;
  155.     }
  156.     public function getSubject(): ?string
  157.     {
  158.         return $this->subject;
  159.     }
  160.     public function setSubject(string $subject): static
  161.     {
  162.         $this->subject $subject;
  163.         return $this;
  164.     }
  165.     public function getBody(): ?string
  166.     {
  167.         return $this->body;
  168.     }
  169.     public function setBody(string $body): static
  170.     {
  171.         $this->body $body;
  172.         return $this;
  173.     }
  174.     public function getPlainBody(): ?string
  175.     {
  176.         return $this->plainBody;
  177.     }
  178.     public function setPlainBody(string $plainBody): static
  179.     {
  180.         $this->plainBody $plainBody;
  181.         return $this;
  182.     }
  183. }