src/Entity/Um6p/Formation.php line 25

Open in your IDE?
  1. <?php
  2. namespace App\Entity\Um6p;
  3. use App\Repository\Um6p\FormationRepository;
  4. use Doctrine\ORM\Mapping as ORM;
  5. use Doctrine\Common\Collections\ArrayCollection;
  6. use Doctrine\Common\Collections\Collection;
  7. use Gedmo\Mapping\Annotation as Gedmo;
  8. use Symfony\Component\Validator\Constraints as Assert;
  9. use Symfony\Component\HttpFoundation\File\File;
  10. use Vich\UploaderBundle\Mapping\Annotation as Vich;
  11. use Knp\DoctrineBehaviors\Contract\Entity\TranslatableInterface;
  12. use Knp\DoctrineBehaviors\Model\Translatable\TranslatableTrait;
  13. use Symfony\Component\PropertyAccess\PropertyAccess
  14. /**
  15.  * @ORM\Entity(repositoryClass=FormationRepository::class)
  16.  */
  17. class Formation implements TranslatableInterface
  18.     use TranslatableTrait;
  19.     /**
  20.      * @ORM\Id
  21.      * @ORM\GeneratedValue
  22.      * @ORM\Column(type="integer")
  23.      */
  24.     private $id;
  25.     /**
  26.      * @ORM\Column(type="integer", nullable=true)
  27.      */
  28.     private $position;
  29.     /**
  30.      * @ORM\Column(type="boolean", nullable=true)
  31.      */
  32.     private $publier;
  33.     /**
  34.      * @ORM\OneToMany(targetEntity=Module::class, mappedBy="formation", cascade={"persist","remove"})
  35.      * @ORM\OrderBy({"position" = "ASC"})
  36.      */
  37.     private $modules;
  38.     protected $translations;
  39.     
  40.     public function __toString(){
  41.         return $this->getTitre();
  42.     }
  43.     public function getDtitre(){
  44.         return $this->getTitre();
  45.     }
  46.     public function getDduree(){
  47.         return $this->getDuree();
  48.     }
  49.     public function __construct()
  50.     {
  51.         $this->modules     = new ArrayCollection(); 
  52.     }
  53.     public function getId(): ?int
  54.     {
  55.         return $this->id;
  56.     }
  57.     public function getPosition(): ?int
  58.     {
  59.         return $this->position;
  60.     }
  61.     public function setPosition(?int $position): self
  62.     {
  63.         $this->position $position;
  64.         return $this;
  65.     }
  66.     public function isPublier(): ?bool
  67.     {
  68.         return $this->publier;
  69.     }
  70.     public function setPublier(?bool $publier): self
  71.     {
  72.         $this->publier $publier;
  73.         return $this;
  74.     }
  75.     
  76.     /**
  77.      * @return Collection|Module[]
  78.      */
  79.     public function getModules(): Collection
  80.     {
  81.         return $this->modules;
  82.     }
  83.     public function addModule(Module $module): self
  84.     {
  85.         if (!$this->modules->contains($module)) {
  86.             $this->modules[] = $module;
  87.             $module->setFormation($this);
  88.         }
  89.         return $this;
  90.     }
  91.     public function removeModule(Module $module): self
  92.     {
  93.         if ($this->modules->removeElement($module)) {
  94.             // set the owning side to null (unless already changed)
  95.             if ($module->getFormation() === $this) {
  96.                 $module->setFormation(null);
  97.             }
  98.         }
  99.         return $this;
  100.     }
  101.  
  102.  
  103.  
  104.     public function __call($method$arguments)
  105.     {
  106.         return PropertyAccess::createPropertyAccessor()->getValue($this->translate(), $method);
  107.     }
  108. }