src/Entity/Marketing/EmailSubscribe/Subscription.php line 19

  1. <?php
  2. namespace App\Entity\Marketing\EmailSubscribe;
  3. use App\Entity\Traits\ActiveTrait;
  4. use App\Entity\Traits\TrackerFields;
  5. use App\Entity\Traits\UserCreatedInterface;
  6. use App\Entity\Traits\UserUpdatedInterface;
  7. use Doctrine\Common\Collections\Collection;
  8. use Doctrine\ORM\Mapping as ORM;
  9. /**
  10.  * Class Subscription
  11.  * @package App\Entity\Marketing\EmailSubscribe
  12.  */
  13. #[ORM\Table(name'subscribe_subscription')]
  14. #[ORM\Entity(repositoryClass'App\Repository\Marketing\EmailSubscribe\SubscriptionRepository')]
  15. #[ORM\HasLifecycleCallbacks]
  16. class Subscription implements UserUpdatedInterfaceUserCreatedInterface
  17. {
  18.     use TrackerFields;
  19.     use ActiveTrait;
  20.     #[ORM\Id]
  21.     #[ORM\GeneratedValue(strategy'AUTO')]
  22.     #[ORM\Column(type'integer')]
  23.     private $id;
  24.     #[ORM\Column(type'string')]
  25.     private $caption;
  26.     /**
  27.      * @var ?string
  28.      */
  29.     #[ORM\Column(type'text'nullabletrue)]
  30.     private $page_description;
  31.     #[ORM\Column(type'string')]
  32.     private $slug;
  33.     /**
  34.      * @var Collection|Subscriber[]
  35.      */
  36.     #[ORM\OneToMany(targetEntity'App\Entity\Marketing\EmailSubscribe\Subscriber'mappedBy'subscription')]
  37.     private $subscribers;
  38.     /**
  39.      * @return mixed
  40.      */
  41.     public function getId()
  42.     {
  43.         return $this->id;
  44.     }
  45.     /**
  46.      * @param mixed $id
  47.      */
  48.     public function setId($id): void
  49.     {
  50.         $this->id $id;
  51.     }
  52.     /**
  53.      * @return mixed
  54.      */
  55.     public function getCaption()
  56.     {
  57.         return $this->caption;
  58.     }
  59.     /**
  60.      * @param mixed $caption
  61.      */
  62.     public function setCaption($caption): void
  63.     {
  64.         $this->caption $caption;
  65.     }
  66.     /**
  67.      * @return mixed
  68.      */
  69.     public function getSlug()
  70.     {
  71.         return $this->slug;
  72.     }
  73.     /**
  74.      * @param mixed $slug
  75.      */
  76.     public function setSlug($slug): void
  77.     {
  78.         $this->slug $slug;
  79.     }
  80.     /**
  81.      * @return Subscriber[]|Collection
  82.      */
  83.     public function getSubscribers()
  84.     {
  85.         return $this->subscribers;
  86.     }
  87.     /**
  88.      * @param Subscriber[]|Collection $subscribers
  89.      */
  90.     public function setSubscribers($subscribers): void
  91.     {
  92.         $this->subscribers $subscribers;
  93.     }
  94.     /**
  95.      * @return string|null
  96.      */
  97.     public function getPageDescription(): ?string
  98.     {
  99.         return $this->page_description;
  100.     }
  101.     /**
  102.      * @param string|null $page_description
  103.      */
  104.     public function setPageDescription(?string $page_description): void
  105.     {
  106.         $this->page_description $page_description;
  107.     }
  108. }