src/Entity/Membre.php line 12

  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\MembreRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use Symfony\Component\Serializer\Annotation\Groups;
  8. #[ORM\Entity(repositoryClassMembreRepository::class)]
  9. class Membre
  10. {
  11.     #[ORM\Id]
  12.     #[ORM\GeneratedValue]
  13.     #[ORM\Column]
  14.     #[Groups(['read:sujet:collection''read:sujet:item''read:forum:messsage:collection'])]
  15.     private ?int $id null;
  16.     #[ORM\ManyToMany(targetEntityForum::class, inversedBy'membres')]
  17.     private Collection $forums;
  18.     #[ORM\OneToMany(mappedBy'membre'targetEntityForumMessage::class, orphanRemovaltrue)]
  19.     private Collection $forumMessages;
  20.     #[ORM\OneToMany(mappedBy'membre'targetEntitySujet::class, orphanRemovaltrue)]
  21.     private Collection $sujets;
  22.     #[ORM\OneToOne(cascade: ['persist''remove'])]
  23.     #[ORM\JoinColumn(nullablefalse)]
  24.     #[Groups(['read:sujet:collection''read:sujet:item''read:forum:messsage:collection'])]
  25.     private ?User $utilisateur null;
  26.     #[ORM\OneToMany(mappedBy'membre'targetEntityLikeMessageForum::class, orphanRemovaltrue)]
  27.     private Collection $likeMessageForums;
  28.     public function __construct()
  29.     {
  30.         $this->forums = new ArrayCollection();
  31.         $this->forumMessages = new ArrayCollection();
  32.         $this->sujets = new ArrayCollection();
  33.         $this->likeMessageForums = new ArrayCollection();
  34.     }
  35.     public function getId(): ?int
  36.     {
  37.         return $this->id;
  38.     }
  39.     /**
  40.      * @return Collection<int, Forum>
  41.      */
  42.     public function getForums(): Collection
  43.     {
  44.         return $this->forums;
  45.     }
  46.     public function addForum(Forum $forum): self
  47.     {
  48.         if (!$this->forums->contains($forum)) {
  49.             $this->forums->add($forum);
  50.         }
  51.         return $this;
  52.     }
  53.     public function removeForum(Forum $forum): self
  54.     {
  55.         $this->forums->removeElement($forum);
  56.         return $this;
  57.     }
  58.     /**
  59.      * @return Collection<int, ForumMessage>
  60.      */
  61.     public function getForumMessages(): Collection
  62.     {
  63.         return $this->forumMessages;
  64.     }
  65.     public function addForumMessage(ForumMessage $forumMessage): self
  66.     {
  67.         if (!$this->forumMessages->contains($forumMessage)) {
  68.             $this->forumMessages->add($forumMessage);
  69.             $forumMessage->setMembre($this);
  70.         }
  71.         return $this;
  72.     }
  73.     public function removeForumMessage(ForumMessage $forumMessage): self
  74.     {
  75.         if ($this->forumMessages->removeElement($forumMessage)) {
  76.             // set the owning side to null (unless already changed)
  77.             if ($forumMessage->getMembre() === $this) {
  78.                 $forumMessage->setMembre(null);
  79.             }
  80.         }
  81.         return $this;
  82.     }
  83.     /**
  84.      * @return Collection<int, Sujet>
  85.      */
  86.     public function getSujets(): Collection
  87.     {
  88.         return $this->sujets;
  89.     }
  90.     public function addSujet(Sujet $sujet): self
  91.     {
  92.         if (!$this->sujets->contains($sujet)) {
  93.             $this->sujets->add($sujet);
  94.             $sujet->setMembre($this);
  95.         }
  96.         return $this;
  97.     }
  98.     public function removeSujet(Sujet $sujet): self
  99.     {
  100.         if ($this->sujets->removeElement($sujet)) {
  101.             // set the owning side to null (unless already changed)
  102.             if ($sujet->getMembre() === $this) {
  103.                 $sujet->setMembre(null);
  104.             }
  105.         }
  106.         return $this;
  107.     }
  108.     public function getUtilisateur(): ?User
  109.     {
  110.         return $this->utilisateur;
  111.     }
  112.     public function setUtilisateur(User $utilisateur): self
  113.     {
  114.         $this->utilisateur $utilisateur;
  115.         return $this;
  116.     }
  117.     /**
  118.      * @return Collection<int, LikeMessageForum>
  119.      */
  120.     public function getLikeMessageForums(): Collection
  121.     {
  122.         return $this->likeMessageForums;
  123.     }
  124.     public function addLikeMessageForum(LikeMessageForum $likeMessageForum): static
  125.     {
  126.         if (!$this->likeMessageForums->contains($likeMessageForum)) {
  127.             $this->likeMessageForums->add($likeMessageForum);
  128.             $likeMessageForum->setMembre($this);
  129.         }
  130.         return $this;
  131.     }
  132.     public function removeLikeMessageForum(LikeMessageForum $likeMessageForum): static
  133.     {
  134.         if ($this->likeMessageForums->removeElement($likeMessageForum)) {
  135.             // set the owning side to null (unless already changed)
  136.             if ($likeMessageForum->getMembre() === $this) {
  137.                 $likeMessageForum->setMembre(null);
  138.             }
  139.         }
  140.         return $this;
  141.     }
  142. }