<?php
namespace App\Entity;
use Core\Entity\ControllerList;
use Core\Entity\Traits\EntityTrait;
use Core\Entity\Traits\PageTrait;
use Core\Entity\Traits\TranslatableTrait;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\HttpFoundation\File\File;
use Vich\UploaderBundle\Mapping\Annotation as Vich;
use Gedmo\Mapping\Annotation as Gedmo;
/**
* @Vich\Uploadable
* @ORM\Entity(repositoryClass="App\Repository\PageItemRepository")
* @ORM\Table(name="app_page_item")
*/
class PageItem
{
use TranslatableTrait;
use EntityTrait {
EntityTrait::__construct as private __entityConstruct;
}
/**
* Référence unique de la catégorie
*
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $reference;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $item_description;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $svg;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $description;
/**
* @ORM\Column(type="string", length=255, nullable=true)
* @var string
*/
private $image;
/**
* @Vich\UploadableField(mapping="images", fileNameProperty="image")
* @var File
*/
private $imageFile;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $image_alt;
/**
* @ORM\Column(type="string", length=255, nullable=true)
* @var string
*/
private $document;
/**
* @Vich\UploadableField(mapping="files", fileNameProperty="document")
* @var File
*/
private $documentFile;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageDefault", inversedBy="items")
*/
private $page_default;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageDefault", inversedBy="temoignages")
*/
private $page_default_temoignage;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageDefault", inversedBy="accompagnements")
*/
private $page_default_accompagnement;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageDefault", inversedBy="diagnostics")
*/
private $page_default_diagnostic;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageDefault", inversedBy="ebooks")
*/
private $page_default_ebook;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageDefault", inversedBy="soins")
*/
private $page_default_soin;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageDefault", inversedBy="goals")
*/
private $page_default_goal;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageGeneral", inversedBy="items")
*/
private $page_general;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageGeneral", inversedBy="carousels")
*/
private $page_general_carousel;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\PageGeneral", inversedBy="messages")
*/
private $page_general_message;
/**
* Constructeur
* @throws \Exception
*/
public function __construct()
{
$this->__entityConstruct();
}
/**
* @return string
*/
public function getDocument()
{
return $this->document;
}
/**
* @param string $document
*/
public function setDocument( $document)
{
$this->document = $document;
}
/**
* @return string
*/
public function getDocumentFile()
{
return $this->documentFile;
}
/**
* @param File $item
* @throws \Exception
*/
public function setDocumentFile($item)
{
$this->documentFile = $item;
if ($item) {
$this->setUpdatedAt(new \DateTime('now'));
}
}
/**
* @return mixed
*/
public function getPageDefault()
{
return $this->page_default;
}
/**
* @param mixed $page_default
*/
public function setPageDefault($page_default): void
{
$this->page_default = $page_default;
}
/**
* @return mixed
*/
public function getPageGeneral()
{
return $this->page_general;
}
/**
* @param mixed $page_general
*/
public function setPageGeneral($page_general): void
{
$this->page_general = $page_general;
}
/**
* @return mixed
*/
public function getImageAlt()
{
return $this->image_alt;
}
/**
* @param mixed $image_alt
*/
public function setImageAlt($image_alt): void
{
$this->image_alt = $image_alt;
}
/**
* @return mixed
*/
public function getDescription()
{
return $this->description;
}
/**
* @param mixed $description
*/
public function setDescription($description): void
{
$this->description = $description;
}
/**
* @return mixed
*/
public function getItemDescription()
{
return $this->item_description;
}
/**
* @param mixed $item_description
*/
public function setItemDescription($item_description): void
{
$this->item_description = $item_description;
}
/**
* @return string
*/
public function getImage()
{
if($this->image == ''){
return 'no_image.png';
}
return $this->image;
}
/**
* @param string $image
*/
public function setImage($image)
{
$this->image = $image;
}
/**
* @return File
*/
public function getImageFile()
{
return $this->imageFile;
}
/**
* @param File $imageFile
* @throws \Exception
*/
public function setImageFile(File $imageFile)
{
$this->imageFile = $imageFile;
if ($imageFile) {
$this->setUpdatedAt(new \DateTime('now'));
}
}
/**
* @return mixed
*/
public function getReference()
{
return $this->reference;
}
/**
* @param mixed $reference
*/
public function setReference($reference): void
{
$this->reference = $reference;
}
/**
* @return mixed
*/
public function getPageDefaultTemoignage()
{
return $this->page_default_temoignage;
}
/**
* @param mixed $page_default_temoignage
*/
public function setPageDefaultTemoignage($page_default_temoignage): void
{
$this->page_default_temoignage = $page_default_temoignage;
}
/**
* @return mixed
*/
public function getPageDefaultEbook()
{
return $this->page_default_ebook;
}
/**
* @param mixed $page_default_ebook
*/
public function setPageDefaultEbook($page_default_ebook): void
{
$this->page_default_ebook = $page_default_ebook;
}
/**
* @return mixed
*/
public function getPageGeneralMessage()
{
return $this->page_general_message;
}
/**
* @param mixed $page_general_message
*/
public function setPageGeneralMessage($page_general_message): void
{
$this->page_general_message = $page_general_message;
}
/**
* @return mixed
*/
public function getPageGeneralCarousel()
{
return $this->page_general_carousel;
}
/**
* @param mixed $page_general_carousel
*/
public function setPageGeneralCarousel($page_general_carousel): void
{
$this->page_general_carousel = $page_general_carousel;
}
/**
* @return mixed
*/
public function getPageDefaultAccompagnement()
{
return $this->page_default_accompagnement;
}
/**
* @param mixed $page_default_accompagnement
*/
public function setPageDefaultAccompagnement($page_default_accompagnement): void
{
$this->page_default_accompagnement = $page_default_accompagnement;
}
/**
* @return mixed
*/
public function getSvg()
{
return $this->svg;
}
/**
* @param mixed $svg
*/
public function setSvg($svg): void
{
$this->svg = $svg;
}
/**
* @return mixed
*/
public function getPageDefaultDiagnostic()
{
return $this->page_default_diagnostic;
}
/**
* @param mixed $page_default_diagnostic
*/
public function setPageDefaultDiagnostic($page_default_diagnostic): void
{
$this->page_default_diagnostic = $page_default_diagnostic;
}
/**
* @return mixed
*/
public function getPageDefaultSoin()
{
return $this->page_default_soin;
}
/**
* @param mixed $page_default_soin
*/
public function setPageDefaultSoin($page_default_soin): void
{
$this->page_default_soin = $page_default_soin;
}
/**
* @return mixed
*/
public function getPageDefaultGoal()
{
return $this->page_default_goal;
}
/**
* @param mixed $page_default_goal
*/
public function setPageDefaultGoal($page_default_goal): void
{
$this->page_default_goal = $page_default_goal;
}
}