src/AtechNet/CoreBundle/Helper/Furbify/SocialShareImageHelper.php line 35

Open in your IDE?
  1. <?php
  2. namespace App\AtechNet\CoreBundle\Helper\Furbify;
  3. class SocialShareImageHelper
  4. {
  5.     public const SOCIAL_MEDIA_IMAGE_DIRECTORY = 'social_media_images';
  6.     private $cloudFlareImageApiConfig;
  7.     /**
  8.      * @param array $cloudFlareImageApiConfig
  9.      */
  10.     public function __construct(array $cloudFlareImageApiConfig)
  11.     {
  12.         $this->cloudFlareImageApiConfig = $cloudFlareImageApiConfig;
  13.     }
  14.     /**
  15.      * @param string|null $filename
  16.      * @param string $page
  17.      * @return string|null
  18.      */
  19.     public function getImageUrl(?string $filename, string $page): ?string
  20.     {
  21.         if (is_null($filename)) {
  22.             return null;
  23.         }
  24.         $imageData = [
  25.             'originalName' => $filename,
  26.             'centralisDirectory' => 'uploads/media/' . $page . '/',
  27.         ];
  28.         return (new Image($this->cloudFlareImageApiConfig, $imageData, self::SOCIAL_MEDIA_IMAGE_DIRECTORY))->resize(Image::SOCIAL_MEDIA_IMAGE_WIDTH, Image::SOCIAL_MEDIA_IMAGE_HEIGHT);
  29.     }
  30. }