<?phpnamespace App\Entity\Game\Riddle;use App\Repository\Game\Riddle\WordRiddleLevelRepository;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\ORM\Mapping as ORM;/** * @ORM\Entity(repositoryClass=WordRiddleLevelRepository::class) */class WordRiddleLevel{ /** * @ORM\Id * @ORM\GeneratedValue * @ORM\Column(type="integer") */ private $id; /** * @ORM\Column(type="integer") */ private $levelNumber; /** * @ORM\Column(type="string", length=255, nullable=true) */ private $difficulty; /** * @ORM\OneToOne(targetEntity=WordRiddle::class, cascade={"persist", "remove"}) */ private $wordRiddle; /** * @ORM\Column(type="boolean") */ private $isPublished; /** * @ORM\Column(type="string", length=191, nullable=true) */ private $slug; /** * @ORM\OneToMany(targetEntity=WordRiddleParticipation::class, mappedBy="level") */ private $participations; /** * @ORM\ManyToOne(targetEntity=WordRiddleGame::class, inversedBy="levels") */ private $game; public function __construct() { $this->participations = new ArrayCollection(); } public function getId(): ?int { return $this->id; } public function getLevelNumber(): ?int { return $this->levelNumber; } public function setLevelNumber(int $levelNumber): self { $this->levelNumber = $levelNumber; return $this; } public function getDifficulty(): ?string { return $this->difficulty; } public function setDifficulty(?string $difficulty): self { $this->difficulty = $difficulty; return $this; } public function getWordRiddle(): ?WordRiddle { return $this->wordRiddle; } public function setWordRiddle(?WordRiddle $wordRiddle): self { $this->wordRiddle = $wordRiddle; return $this; } public function isIsPublished(): ?bool { return $this->isPublished; } public function setIsPublished(bool $isPublished): self { $this->isPublished = $isPublished; return $this; } public function getSlug(): ?string { return $this->slug; } public function setSlug(?string $slug): self { $this->slug = $slug; return $this; } /** * @return Collection<int, WordRiddleParticipation> */ public function getParticipations(): Collection { return $this->participations; } public function addParticipation(WordRiddleParticipation $participation): self { if (!$this->participations->contains($participation)) { $this->participations[] = $participation; $participation->setLevel($this); } return $this; } public function removeParticipation(WordRiddleParticipation $participation): self { if ($this->participations->removeElement($participation)) { // set the owning side to null (unless already changed) if ($participation->getLevel() === $this) { $participation->setLevel(null); } } return $this; } public function getGame(): ?WordRiddleGame { return $this->game; } public function setGame(?WordRiddleGame $game): self { $this->game = $game; return $this; }}