src/Entity/Category.php line 18

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Entity\Contact;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use Sulu\Bundle\CategoryBundle\Entity\Category as SuluCategory;
  8. use JMS\Serializer\Annotation\ExclusionPolicy;
  9. /**
  10.  * @ORM\Entity()
  11.  * @ORM\Table(name="ca_categories")
  12.  * @ExclusionPolicy("all")
  13.  * 
  14.  */
  15. class Category extends SuluCategory
  16. {
  17.     /**
  18.      * @ORM\Column(type="array", length=255, nullable=true)
  19.      */
  20.     private ?array $pageLink;
  21.     /**
  22.      * @ORM\Column(type="string", length=63, nullable=true)
  23.      */
  24.     private ?string $color;
  25.     /**
  26.      * @ORM\OneToMany(targetEntity=Contact::class, mappedBy="departement")
  27.      */
  28.     private $contacts;
  29.     /**
  30.      * @ORM\OneToMany(targetEntity=Contact::class, mappedBy="territoireInterv")
  31.      */
  32.     private $territoireContacts;
  33.     /**
  34.      * @ORM\ManyToMany(targetEntity=Contact::class, mappedBy="optins")
  35.      */
  36.     private $optinsContacts;
  37.     public function __construct()
  38.     {
  39.         parent::__construct();
  40.         $this->contacts = new ArrayCollection();
  41.         $this->optinsContacts = new ArrayCollection();
  42.     }
  43.     public function getPageLink(): ?array
  44.     {
  45.         return $this->pageLink;
  46.     }
  47.     public function setPageLink(?array $pageLink): void
  48.     {
  49.         $this->pageLink $pageLink;
  50.     }
  51.     public function getColor(): ?string
  52.     {
  53.         return $this->color;
  54.     }
  55.     public function setColor(?string $color): void
  56.     {
  57.         $this->color $color;
  58.     }
  59.     /**
  60.      * @return Collection<int, Contact>
  61.      */
  62.     public function getContacts(): Collection
  63.     {
  64.         return $this->contacts;
  65.     }
  66.     public function addContact(Contact $contact): self
  67.     {
  68.         if (!$this->contacts->contains($contact)) {
  69.             $this->contacts[] = $contact;
  70.             $contact->setDepartement($this);
  71.         }
  72.         return $this;
  73.     }
  74.     public function removeContact(Contact $contact): self
  75.     {
  76.         if ($this->contacts->removeElement($contact)) {
  77.             // set the owning side to null (unless already changed)
  78.             if ($contact->getDepartement() === $this) {
  79.                 $contact->setDepartement(null);
  80.             }
  81.         }
  82.         return $this;
  83.     }
  84.     /**
  85.      * @return Collection<int, Contact>
  86.      */
  87.     public function getTerritoireContacts(): Collection
  88.     {
  89.         return $this->territoireContacts;
  90.     }
  91.     public function addTerritoireContact(Contact $territoireContact): self
  92.     {
  93.         if (!$this->territoireContacts->contains($territoireContact)) {
  94.             $this->territoireContacts[] = $territoireContact;
  95.             $territoireContact->setDepartement($this);
  96.         }
  97.         return $this;
  98.     }
  99.     public function removeTerritoireContact(Contact $territoireContact): self
  100.     {
  101.         if ($this->territoireContacts->removeElement($territoireContact)) {
  102.             // set the owning side to null (unless already changed)
  103.             if ($territoireContact->getDepartement() === $this) {
  104.                 $territoireContact->setDepartement(null);
  105.             }
  106.         }
  107.         return $this;
  108.     }
  109.     /**
  110.      * @return Collection<int, Contact>
  111.      */
  112.     public function getOptins(): Collection
  113.     {
  114.         return $this->optinsContacts;
  115.     }
  116.     public function addOptin(Contact $optin): self
  117.     {
  118.         if (!$this->optinsContacts->contains($optin)) {
  119.             $this->optinsContacts[] = $optin;
  120.             $optin->addOptin($this);
  121.         }
  122.         return $this;
  123.     }
  124.     public function removeOptin(Contact $optin): self
  125.     {
  126.         if ($this->optinsContacts->removeElement($optin)) {
  127.             $optin->removeOptin($this);
  128.         }
  129.         return $this;
  130.     }
  131. }