vendor/fri0z/mldev-gallery-bundle/src/Entity/Album.php line 16

Open in your IDE?
  1. <?php
  2. namespace MLDev\GalleryBundle\Entity;
  3. use Doctrine\Common\Collections\ArrayCollection;
  4. use Doctrine\ORM\Mapping as ORM;
  5. use MLDev\BaseBundle\Entity\Traits\Timestampable;
  6. /**
  7.  * Album
  8.  *
  9.  * @ORM\Table(name="MLDev_Gallery_Album")
  10.  * @ORM\Entity(repositoryClass="MLDev\GalleryBundle\Repository\AlbumRepository")
  11.  * @ORM\HasLifecycleCallbacks()
  12.  */
  13. class Album
  14. {
  15.     use Timestampable;
  16.     /**
  17.      * @var int
  18.      *
  19.      * @ORM\Column(name="id", type="integer")
  20.      * @ORM\Id
  21.      * @ORM\GeneratedValue(strategy="AUTO")
  22.      */
  23.     private $id;
  24.     /**
  25.      * @var string
  26.      *
  27.      * @ORM\Column(name="name", type="string", length=255)
  28.      */
  29.     private $name;
  30.     /**
  31.      * @var string|null
  32.      *
  33.      * @ORM\Column(name="description", type="text", nullable=true)
  34.      */
  35.     private $description;
  36.     /**
  37.      * @var int|null
  38.      *
  39.      * @ORM\Column(name="priority", type="integer", nullable=true)
  40.      */
  41.     private $priority 100;
  42.     /**
  43.      * @var bool
  44.      *
  45.      * @ORM\Column(name="isActive", type="boolean")
  46.      */
  47.     private $isActive true;
  48.     /**
  49.      * @ORM\ManyToOne(targetEntity="MLDev\GalleryBundle\Entity\Gallery", inversedBy="albums")
  50.      * @ORM\JoinColumn(name="galleryId", referencedColumnName="id", onDelete="CASCADE")
  51.      */
  52.     private $gallery;
  53.     /**
  54.      * @ORM\OneToMany(targetEntity="MLDev\GalleryBundle\Entity\Item", mappedBy="album", fetch="EXTRA_LAZY", cascade={"persist"})
  55.      * @ORM\OrderBy({"priority" = "ASC", "id" = "DESC"})
  56.      */
  57.     private $items;
  58.     /**
  59.      * Album constructor.
  60.      */
  61.     public function __construct()
  62.     {
  63.         $this->items = new ArrayCollection();
  64.     }
  65.     /**
  66.      * Get id.
  67.      *
  68.      * @return int
  69.      */
  70.     public function getId()
  71.     {
  72.         return $this->id;
  73.     }
  74.     /**
  75.      * Set name.
  76.      *
  77.      * @param string $name
  78.      *
  79.      * @return Album
  80.      */
  81.     public function setName($name)
  82.     {
  83.         $this->name $name;
  84.         return $this;
  85.     }
  86.     /**
  87.      * Get name.
  88.      *
  89.      * @return string
  90.      */
  91.     public function getName()
  92.     {
  93.         return $this->name;
  94.     }
  95.     /**
  96.      * Set description.
  97.      *
  98.      * @param string|null $description
  99.      *
  100.      * @return Album
  101.      */
  102.     public function setDescription($description null)
  103.     {
  104.         $this->description $description;
  105.         return $this;
  106.     }
  107.     /**
  108.      * Get description.
  109.      *
  110.      * @return string|null
  111.      */
  112.     public function getDescription()
  113.     {
  114.         return $this->description;
  115.     }
  116.     /**
  117.      * Set priority.
  118.      *
  119.      * @param int|null $priority
  120.      *
  121.      * @return Album
  122.      */
  123.     public function setPriority($priority null)
  124.     {
  125.         $this->priority $priority;
  126.         return $this;
  127.     }
  128.     /**
  129.      * Get priority.
  130.      *
  131.      * @return int|null
  132.      */
  133.     public function getPriority()
  134.     {
  135.         return $this->priority;
  136.     }
  137.     /**
  138.      * Set isActive.
  139.      *
  140.      * @param bool $isActive
  141.      *
  142.      * @return Album
  143.      */
  144.     public function setIsActive($isActive)
  145.     {
  146.         $this->isActive $isActive;
  147.         return $this;
  148.     }
  149.     /**
  150.      * Get isActive.
  151.      *
  152.      * @return bool
  153.      */
  154.     public function getIsActive()
  155.     {
  156.         return $this->isActive;
  157.     }
  158.     /**
  159.      * @return mixed
  160.      */
  161.     public function getGallery()
  162.     {
  163.         return $this->gallery;
  164.     }
  165.     /**
  166.      * @param mixed $gallery
  167.      */
  168.     public function setGallery($gallery)
  169.     {
  170.         $this->gallery $gallery;
  171.     }
  172.     /**
  173.      * Add new item
  174.      *
  175.      * @param Item $item
  176.      */
  177.     public function addItem(Item $item)
  178.     {
  179.         if (!$this->items->contains($item)) {
  180.             $item->setAlbum($this);
  181.             $this->items->add($item);
  182.         }
  183.     }
  184.     /**
  185.      * Remove item
  186.      *
  187.      * @param Item $item
  188.      */
  189.     public function removeItem(Item $item)
  190.     {
  191.         if ($this->items->contains($item)) {
  192.             $this->items->removeElement($item);
  193.         }
  194.     }
  195.     /**
  196.      * @return mixed
  197.      */
  198.     public function getItems()
  199.     {
  200.         return $this->items;
  201.     }
  202. }