<?php
namespace App\Entity;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
use App\Repository\NewsletterRepository;
/**
* class Newsletter
*
* @ORM\Entity(repositoryClass="App\Repository\NewsletterRepository")
*
* @ORM\Table(name="newsletter")
* @ORM\Entity
*/
class Newsletter
{
const RESOURCE_KEY = 'newsletters';
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\ManyToMany(targetEntity="App\Entity\Message", mappedBy="newsletters")
*/
private $messages;
/**
* @ORM\Column(type="string", length=150, nullable=true)
*/
private $email;
/**
*@ORM\Column(type="boolean", options={"default":"1"}, nullable=true)
*/
private $status;
/**
* @ORM\Column(type="datetime", nullable=true)
*/
private $lastSendDate;
/**
* @return mixed
*/
public function getId()
{
return $this->id;
}
/**
* @param mixed $id
*/
public function setId($id): void
{
$this->id = $id;
}
/**
* @return mixed
*/
public function getEmail()
{
return $this->email;
}
/**
* @param mixed $email
*/
public function setEmail($email): void
{
$this->email = $email;
}
/**
* @return mixed
*/
public function getStatus()
{
return $this->status;
}
/**
* @param mixed $status
*/
public function setStatus($status): void
{
$this->status = $status;
}
/**
* @return mixed
*/
public function getLastSendDate()
{
return $this->lastSendDate;
}
public function setLastSendDate($lastSendDate): void
{
$this->lastSendDate = $lastSendDate;
}
public function getMessages(): Collection
{
return $this->messages;
}
public function addMessage(Message $message): self
{
if (!$this->messages->contains($message)) {
$this->messages[] = $message;
$message->addNewsletter($this);
}
return $this;
}
public function removeMessage(Message $message): self
{
if ($this->messages->contains($message)) {
$this->messages->removeElement($message);
$message->removeNewsletter($this);
}
return $this;
}
}