src/Entity/Actualites.php line 28

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\ActualitesRepository;
  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=ActualitesRepository::class)
  18.  * @Vich\Uploadable
  19.  * @UniqueEntity(
  20.  *     fields={"slug"},
  21.  *     message="Actualite deja Exist."
  22.  * )
  23.  */
  24. class Actualites implements TranslatableInterface
  25. {
  26.     
  27.     use TranslatableTrait;
  28.     /**
  29.      * @ORM\Id
  30.      * @ORM\GeneratedValue
  31.      * @ORM\Column(type="integer")
  32.      */
  33.     private $id;
  34.     /**
  35.      * @ORM\Column(type="datetime", nullable=true)
  36.      */
  37.     private $datePublier;
  38.     /**
  39.      * @ORM\Column(type="string", length=255, unique=true)
  40.      */
  41.     private $slug;
  42.     /**
  43.      * @ORM\Column(type="string", length=255, nullable=true)
  44.      */
  45.     private $image;
  46.     /**
  47.      * @Gedmo\Timestampable(on="create")
  48.      * @ORM\Column(type="datetime", nullable=true)
  49.      */
  50.     private $created_at;
  51.     /**
  52.      * @Gedmo\Timestampable(on="update")
  53.      * @ORM\Column(type="datetime", nullable=true)
  54.      */
  55.     private $updated_at
  56.     /**
  57.      * @Vich\UploadableField(mapping="image_actualite", fileNameProperty="image")
  58.      * @var File
  59.      */
  60.     private $imageFile;
  61.     /**
  62.      * @ORM\Column(type="boolean", nullable=true)
  63.      */
  64.     private $publier;
  65.  
  66.     protected $translations;
  67.  
  68.     public function __construct()
  69.     { 
  70.     }
  71.     public function __toString()
  72.     {
  73.         return "dddd";
  74.     }
  75.     public function getId(): ?int
  76.     {
  77.         return $this->id;
  78.     }
  79.     public function getDatePublier(): ?\DateTimeInterface
  80.     {
  81.         return $this->datePublier;
  82.     }
  83.     public function setDatePublier(?\DateTimeInterface $datePublier): self
  84.     {
  85.         $this->datePublier $datePublier;
  86.         return $this;
  87.     }
  88.     public function getSlug(): ?string
  89.     {
  90.         return $this->slug;
  91.     }
  92.     public function setSlug(string $slug): self
  93.     {
  94.         $this->slug $slug;
  95.         return $this;
  96.     }
  97.     public function getImage(): ?string
  98.     {
  99.         return $this->image;
  100.     }
  101.     public function setImage(?string $image): self
  102.     {
  103.         $this->image $image;
  104.         return $this;
  105.     }
  106.     public function getCreatedAt(): ?\DateTimeInterface
  107.     {
  108.         return $this->created_at;
  109.     }
  110.     public function setCreatedAt(?\DateTimeInterface $created_at): self
  111.     {
  112.         $this->created_at $created_at;
  113.         return $this;
  114.     }
  115.     public function getUpdatedAt(): ?\DateTimeInterface
  116.     {
  117.         return $this->updated_at;
  118.     }
  119.     public function setUpdatedAt(?\DateTimeInterface $updated_at): self
  120.     {
  121.         $this->updated_at $updated_at;
  122.         return $this;
  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 getDateFormat($local="fr"){
  147.         return Utils::getDateFormating($this->datePublier->format('Y-m-d'),$local);
  148.     }
  149.     public function __call($method$arguments)
  150.     {
  151.         return PropertyAccess::createPropertyAccessor()->getValue($this->translate(), $method);
  152.     }
  153. }