src/Twig/WebExtension.php line 39

  1. <?php
  2. namespace App\Twig;
  3. use App\Entity\PictureWeb;
  4. use App\Entity\Web;
  5. use Twig\Extension\AbstractExtension;
  6. use Twig\TwigFilter;
  7. class WebExtension extends AbstractExtension
  8. {
  9.     public function getFilters()
  10.     {
  11.         return [
  12.             new TwigFilter('imgWebIndex', [$this'imgWebIndex']),
  13.             new TwigFilter('imgWebHover', [$this'imgWebHover']),
  14.             new TwigFilter('imgWebTitre', [$this'imgWebTitre']),
  15.             new TwigFilter('imgWebPresentation', [$this'imgWebPresentation']),
  16.         ];
  17.     }
  18.     public function imgWebIndex(Web $web){
  19.         /** @var PictureWeb $picture */
  20.         foreach ($web->getPictures() as $picture){
  21.             if($picture->getType() === PictureWeb::IMG_INDEX){
  22.                 return $picture->getPicture();
  23.             }
  24.         }
  25.     }
  26.     public function imgWebHover(Web $web){
  27.         /** @var PictureWeb $picture */
  28.         foreach ($web->getPictures() as $picture){
  29.             if($picture->getType() === PictureWeb::IMG_INDEX_HOVER){
  30.                 return $picture->getPicture();
  31.             }
  32.         }
  33.     }
  34.     public function imgWebTitre(Web $web){
  35.         /** @var PictureWeb $picture */
  36.         foreach ($web->getPictures() as $picture){
  37.             if($picture->getType() === PictureWeb::IMG_TITRE){
  38.                 return $picture->getPicture();
  39.             }
  40.         }
  41.     }
  42.     public function imgWebPresentation(Web $web){
  43.         /** @var PictureWeb $picture */
  44.         foreach ($web->getPictures() as $picture){
  45.             if($picture->getType() === PictureWeb::IMG_PRESENTATION){
  46.                 return $picture->getPicture();
  47.             }
  48.         }
  49.     }
  50. }