src/Twig/BookExtension.php line 49

  1. <?php
  2. namespace App\Twig;
  3. use App\Entity\Book;
  4. use Twig\Extension\AbstractExtension;
  5. use Twig\TwigFilter;
  6. class BookExtension extends AbstractExtension
  7. {
  8.     public function getFilters()
  9.     {
  10.         return [
  11.             new TwigFilter('imgBookIndex', [$this'imgBookIndex']),
  12.             new TwigFilter('imgBookBanniere', [$this'imgBookBanniere']),
  13.             new TwigFilter('imgBookBanniere_2', [$this'imgBookBanniere_2']),
  14.             new TwigFilter('imgBookBanniere_3', [$this'imgBookBanniere_3']),
  15.             new TwigFilter('imgBookPresentation', [$this'imgBookPresentation'])
  16.         ];
  17.     }
  18.     public function imgBookBanniere(Book $book){
  19.         /** @var PictureBook $picture */
  20.         foreach ($book->getPictures() as $picture){
  21.             if($picture->getType() === Book::IMG_INDEX_BANNIERE){
  22.                 return $picture->getPicture();
  23.             }
  24.         }
  25.     }
  26.     public function imgBookBanniere_2(Book $book){
  27.         /** @var PictureBook $picture */
  28.         foreach ($book->getPictures() as $picture){
  29.             if($picture->getType() === Book::IMG_INDEX_BANNIERE_2){
  30.                 return $picture->getPicture();
  31.             }
  32.         }
  33.         return false;
  34.     }
  35.     public function imgBookBanniere_3(Book $book){
  36.         /** @var PictureBook $picture */
  37.         foreach ($book->getPictures() as $picture){
  38.             if($picture->getType() === Book::IMG_INDEX_BANNIERE_3){
  39.                 return $picture->getPicture();
  40.             }
  41.         }
  42.         return false;
  43.     }
  44.     public function imgBookPresentation(Book $book){
  45.         /** @var PictureBook $picture */
  46.         foreach ($book->getPictures() as $picture){
  47.             if($picture->getType() === Book::IMG_PRESENTATION){
  48.                 return $picture->getPicture();
  49.             }
  50.         }
  51.     }
  52.     public function imgBookIndex(Book $book){
  53.         /** @var PictureBook $picture */
  54.         foreach ($book->getPictures() as $picture){
  55.             if($picture->getType() === Book::IMG_INDEX){
  56.                 return $picture->getPicture();
  57.             }
  58.         }
  59.     }
  60. }