<?phpnamespace App\Entity;use App\Traits\DateTrait;use Doctrine\ORM\Mapping as ORM;use JMS\Serializer\Annotation\Groups;use Symfony\Component\Validator\Constraints as Assert;/** * @ORM\Entity * @ORM\HasLifecycleCallbacks */class Faq{ const MODULE_NAME = 'faq'; const LIBELLE_CACHE = 'liste_all_faq'; use DateTrait; /** * @ORM\Id * @ORM\GeneratedValue * @ORM\Column(type="integer") * * @Groups({"faq"}) */ private ?int $id = null; /** * @ORM\Column(type="string") * @Groups({"faq"}) * * @Assert\NotBlank */ private string $theme = ''; /** * @ORM\Column(type="string") * @Groups({"faq"}) * * @Assert\NotBlank */ private string $question = ''; /** * @ORM\Column(type="string") * @Groups({"faq"}) */ private string $questionNormalized = ''; /** * @ORM\Column(type="string", nullable=true) * @Groups({"faq"}) */ private ?string $question2 = null; /** * @ORM\Column(type="string", nullable=true) * @Groups({"faq"}) */ private ?string $question2Normalized = null; /** * @ORM\Column(type="string", nullable=true) * @Groups({"faq"}) */ private ?string $question3 = null; /** * @ORM\Column(type="string", nullable=true) * @Groups({"faq"}) */ private ?string $question3Normalized = null; /** * @ORM\Column(type="text") * @Groups({"faq"}) * * @Assert\NotBlank */ private string $answer = ''; /** * @return int|null */ public function getId(): ?int { return $this->id; } /** * @param int|null $id * @return Faq */ public function setId(?int $id): Faq { $this->id = $id; return $this; } /** * @return string */ public function getQuestion(): string { return $this->question; } /** * @param string $question * @return Faq */ public function setQuestion(string $question): Faq { $this->question = $question; return $this; } /** * @return string */ public function getQuestionNormalized(): string { return $this->questionNormalized; } /** * @param string $questionNormalized * @return Faq */ public function setQuestionNormalized(string $questionNormalized): Faq { $this->questionNormalized = $questionNormalized; return $this; } /** * @return string|null */ public function getQuestion2(): ?string { return $this->question2; } /** * @param string|null $question2 * @return Faq */ public function setQuestion2(?string $question2): Faq { $this->question2 = $question2; return $this; } /** * @return string|null */ public function getQuestion2Normalized(): ?string { return $this->question2Normalized; } /** * @param string|null $question2Normalized * @return Faq */ public function setQuestion2Normalized(?string $question2Normalized): Faq { $this->question2Normalized = $question2Normalized; return $this; } /** * @return string|null */ public function getQuestion3(): ?string { return $this->question3; } /** * @param string|null $question3 * @return Faq */ public function setQuestion3(?string $question3): Faq { $this->question3 = $question3; return $this; } /** * @return string|null */ public function getQuestion3Normalized(): ?string { return $this->question3Normalized; } /** * @param string|null $question3Normalized * @return Faq */ public function setQuestion3Normalized(?string $question3Normalized): Faq { $this->question3Normalized = $question3Normalized; return $this; } /** * @return string */ public function getAnswer(): string { return $this->answer; } /** * @param string $answer * @return Faq */ public function setAnswer(string $answer): Faq { $this->answer = $answer; return $this; } /** * @return array */ public function getNormalizedQuestions(): array { $questions = []; if(!empty($this->questionNormalized)) $questions[$this->question] = $this->questionNormalized; if(!empty($this->question2Normalized)) $questions[$this->question2] = $this->question2Normalized; if(!empty($this->question3Normalized)) $questions[$this->question3] = $this->question3Normalized; return $questions; } /** * @return string */ public function getTheme(): string { return $this->theme; } /** * @param string $theme * @return Faq */ public function setTheme(string $theme): Faq { $this->theme = $theme; return $this; }}