src/Entity/Media.php line 28

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\MediaRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use App\Utils\Utils;
  8. use Gedmo\Mapping\Annotation as Gedmo;
  9. use Symfony\Component\Validator\Constraints as Assert;
  10. use Symfony\Component\HttpFoundation\File\File;
  11. use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
  12. use Vich\UploaderBundle\Mapping\Annotation as Vich;
  13. use Knp\DoctrineBehaviors\Contract\Entity\TranslatableInterface;
  14. use Knp\DoctrineBehaviors\Model\Translatable\TranslatableTrait;
  15. use Symfony\Component\PropertyAccess\PropertyAccess
  16. /**
  17.  * @ORM\Entity(repositoryClass=MediaRepository::class)
  18.  * @Vich\Uploadable 
  19.  */
  20. class Media implements TranslatableInterface
  21.     use TranslatableTrait;
  22.     /**
  23.      * @ORM\Id
  24.      * @ORM\GeneratedValue
  25.      * @ORM\Column(type="integer")
  26.      */
  27.     private $id;
  28.     /**
  29.      * @ORM\Column(type="datetime", nullable=true)
  30.      */
  31.     private $datePublier;
  32.     /**
  33.      * @ORM\Column(type="string", length=255, nullable=true)
  34.      */
  35.     private $image;
  36.     /**
  37.      * @Gedmo\Timestampable(on="create")
  38.      * @ORM\Column(type="datetime", nullable=true)
  39.      */
  40.     private $created_at;
  41.     /**
  42.      * @Gedmo\Timestampable(on="update")
  43.      * @ORM\Column(type="datetime", nullable=true)
  44.      */
  45.     private $updated_at
  46.     /**
  47.      * @Vich\UploadableField(mapping="image_media", fileNameProperty="image")
  48.      * @var File
  49.      */
  50.     private $imageFile;
  51.     /**
  52.      * @ORM\Column(type="boolean", nullable=true)
  53.      */
  54.     private $publier;
  55.     /**
  56.      * @ORM\Column(type="boolean", nullable=true)
  57.      */
  58.     private $isphoto;
  59.     /**
  60.      * @ORM\Column(type="boolean", nullable=true)
  61.      */
  62.     private $isvideo;
  63.     /**
  64.      * @ORM\Column(type="string", length=255, nullable=true)
  65.      */
  66.     private $lien;
  67.     /**
  68.      * @ORM\Column(type="integer", nullable=true)
  69.      */
  70.     private $position;
  71.  
  72.  
  73.     protected $translations;
  74.     public function __construct()
  75.     { 
  76.     }
  77.     public function __toString()
  78.     {
  79.         return $this->getTitre();
  80.     }
  81.     public function getId(): ?int
  82.     {
  83.         return $this->id;
  84.     }
  85.     public function getDatePublier(): ?\DateTimeInterface
  86.     {
  87.         return $this->datePublier;
  88.     }
  89.     public function setDatePublier(?\DateTimeInterface $datePublier): self
  90.     {
  91.         $this->datePublier $datePublier;
  92.         return $this;
  93.     }
  94.     public function getImage(): ?string
  95.     {
  96.         return $this->image;
  97.     }
  98.     public function setImage(?string $image): self
  99.     {
  100.         $this->image $image;
  101.         return $this;
  102.     }
  103.     public function getCreatedAt(): ?\DateTimeInterface
  104.     {
  105.         return $this->created_at;
  106.     }
  107.     public function setCreatedAt(?\DateTimeInterface $created_at): self
  108.     {
  109.         $this->created_at $created_at;
  110.         return $this;
  111.     }
  112.     public function getUpdatedAt(): ?\DateTimeInterface
  113.     {
  114.         return $this->updated_at;
  115.     }
  116.     public function setUpdatedAt(?\DateTimeInterface $updated_at): self
  117.     {
  118.         $this->updated_at $updated_at;
  119.         return $this;
  120.     }
  121.    
  122.     
  123.   
  124.     
  125.     public function setImageFile(File $image null)
  126.     {
  127.         $this->imageFile $image;
  128.         if ($image) {
  129.             $this->updated_at = new \DateTime('now');
  130.         }
  131.         return $this;
  132.     }
  133.     public function getImageFile()
  134.     {
  135.         return $this->imageFile;
  136.     }
  137.     public function getPublier(): ?bool
  138.     {
  139.         return $this->publier;
  140.     }
  141.     public function setPublier(?bool $publier): self
  142.     {
  143.         $this->publier $publier;
  144.         return $this;
  145.     }
  146.     public function getIsphoto(): ?bool
  147.     {
  148.         return $this->isphoto;
  149.     }
  150.     public function setIsphoto(?bool $isphoto): self
  151.     {
  152.         $this->isphoto $isphoto;
  153.         return $this;
  154.     }
  155.     public function getIsvideo(): ?bool
  156.     {
  157.         return $this->isvideo;
  158.     }
  159.     public function setIsvideo(?bool $isvideo): self
  160.     {
  161.         $this->isvideo $isvideo;
  162.         return $this;
  163.     }
  164.     public function getDateFormat(){
  165.         return Utils::getDateFormatingsansday($this->datePublier->format('Y-m-d'),"fr");
  166.     }
  167.     public function getLien(): ?string
  168.     {
  169.         return $this->lien;
  170.     }
  171.     public function setLien(?string $lien): self
  172.     {
  173.         $this->lien $lien;
  174.         return $this;
  175.     }
  176.     public function getPosition(): ?int
  177.     {
  178.         return $this->position;
  179.     }
  180.     public function setPosition(?int $position): self
  181.     {
  182.         $this->position $position;
  183.         return $this;
  184.     } 
  185.     
  186.     public function __call($method$arguments)
  187.     {
  188.         return PropertyAccess::createPropertyAccessor()->getValue($this->translate(), $method);
  189.     }
  190. }