<?phpnamespace App\Entity\Gos;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\ORM\Mapping as ORM;use Symfony\Component\Validator\Constraints as Assert;use Gedmo\Mapping\Annotation as Gedmo;/** * @ORM\Table() * @ORM\Entity(repositoryClass="App\Repository\EmailBodyRepository") * @ORM\HasLifecycleCallbacks */class EmailBody{ /** * @var integer * * @ORM\Column(type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @ORM\Column(type="string") */ private $name; /** * @ORM\Column(type="string") */ private $title; /** * @ORM\Column(type="string") */ private $fromEmail; /** * @ORM\Column(type="boolean", nullable=true) */ private $emailFromPortal; /** * @ORM\Column(type="text") */ private $body; /** * @ORM\OneToMany(targetEntity="Email", mappedBy="emailbody") */ private $email; /** * @ORM\ManyToOne(targetEntity="EmailTemplate", inversedBy="emailbody") * @ORM\JoinColumn() */ private $emailTemplate; /** * @ORM\ManyToOne(targetEntity="EmailType", inversedBy="emailbody") * @ORM\JoinColumn() */ private $emailType; /** * @ORM\Column(type="text", nullable=true) */ private $testBody; /** * @ORM\ManyToOne(targetEntity="EmailTemplate", inversedBy="testEmailbody") * @ORM\JoinColumn() */ private $testEmailTemplate; /** * @ORM\Column(type="datetime") */ private $createdAt; /** * @ORM\Column(type="datetime", nullable=true) */ private $updatedAt; /** * @ORM\OneToMany(targetEntity=PaymentReminders::class, mappedBy="emailBody") */ private $paymentReminders; /** @ORM\PrePersist() */ public function prePersist() { $this->createdAt = new \DateTime(); } /** @ORM\PreUpdate() */ public function preUpdate() { $this->updatedAt = new \DateTime(); } public function __toString() { return (string) $this->name; } /* ****************************** GETTERS & SETTERS ****************************** */ /** * Constructor */ public function __construct() { $this->email = new ArrayCollection(); $this->paymentReminders = new ArrayCollection(); } public function getId() { return $this->id; } public function setName($name): static { $this->name = $name; return $this; } public function getName(): string { return $this->name; } public function setTitle($title) { $this->title = $title; return $this; } public function getTitle() { return $this->title; } public function setFromEmail($fromEmail): static { $this->fromEmail = $fromEmail; return $this; } public function getFromEmail() { return $this->fromEmail; } public function setEmailFromPortal($emailFromPortal): static { $this->emailFromPortal = $emailFromPortal; return $this; } public function getEmailFromPortal() { return $this->emailFromPortal; } public function setBody($body): static { $this->body = $body; return $this; } public function getBody() { return $this->body; } public function setCreatedAt($createdAt): static { $this->createdAt = $createdAt; return $this; } public function getCreatedAt() { return $this->createdAt; } public function setUpdatedAt($updatedAt): static { $this->updatedAt = $updatedAt; return $this; } /** * Get updatedAt * * @return \DateTime */ public function getUpdatedAt() { return $this->updatedAt; } /** * Add email * * @param Email $email * @return EmailBody */ public function addEmail(Email $email) { $this->email[] = $email; return $this; } /** * Remove email * * @param Email $email */ public function removeEmail(Email $email) { $this->email->removeElement($email); } /** * Get email * * @return \Doctrine\Common\Collections\Collection */ public function getEmail() { return $this->email; } public function getEmailTemplate() { return $this->emailTemplate; } public function setEmailTemplate(EmailTemplate $emailTemplate = null): static { $this->emailTemplate = $emailTemplate; return $this; } public function addEmailType(EmailType $emailType): static { $this->emailType[] = $emailType; return $this; } public function removeEmailType(EmailType $emailType): void { $this->emailType->removeElement($emailType); } public function getEmailType() { return $this->emailType; } public function setEmailType(EmailType $emailType = null): static { $this->emailType = $emailType; return $this; } /** * Set testBody * * @param string $testBody * @return EmailBody */ public function setTestBody($testBody) { $this->testBody = $testBody; return $this; } /** * Get testBody * * @return string */ public function getTestBody() { return $this->testBody; } /** * Get testEmailTemplate * * @return EmailTemplate|null */ public function getTestEmailTemplate() { return $this->testEmailTemplate; } /** * Set testEmailTemplate * * @param EmailTemplate $testEmailTemplate * @return EmailBody */ public function setTestEmailTemplate(?EmailTemplate $testEmailTemplate) { $this->testEmailTemplate = $testEmailTemplate; return $this; } /** * @return Collection|PaymentReminders[] */ public function getPaymentReminders(): Collection { return $this->paymentReminders; } public function addPaymentReminder(PaymentReminders $paymentReminder): self { if (!$this->paymentReminders->contains($paymentReminder)) { $this->paymentReminders[] = $paymentReminder; $paymentReminder->setEmailBody($this); } return $this; } public function removePaymentReminder(PaymentReminders $paymentReminder): self { if ($this->paymentReminders->contains($paymentReminder)) { $this->paymentReminders->removeElement($paymentReminder); // set the owning side to null (unless already changed) if ($paymentReminder->getEmailBody() === $this) { $paymentReminder->setEmailBody(null); } } return $this; }}