PATH:
home
/
cardxfeb
/
public_html
/
vendor
/
spatie
/
laravel-medialibrary
/
src
/
Support
/
UrlGenerator
/
Editing: UrlGeneratorFactory.php
<?php namespace Spatie\MediaLibrary\Support\UrlGenerator; use Spatie\MediaLibrary\Conversions\ConversionCollection; use Spatie\MediaLibrary\MediaCollections\Exceptions\InvalidUrlGenerator; use Spatie\MediaLibrary\MediaCollections\Models\Media; use Spatie\MediaLibrary\Support\PathGenerator\PathGeneratorFactory; class UrlGeneratorFactory { public static function createForMedia(Media $media, string $conversionName = ''): UrlGenerator { $urlGeneratorClass = config('media-library.url_generator'); static::guardAgainstInvalidUrlGenerator($urlGeneratorClass); /** @var \Spatie\MediaLibrary\Support\UrlGenerator\UrlGenerator $urlGenerator */ $urlGenerator = app($urlGeneratorClass); $pathGenerator = PathGeneratorFactory::create($media); $urlGenerator ->setMedia($media) ->setPathGenerator($pathGenerator); if ($conversionName !== '') { $conversion = ConversionCollection::createForMedia($media)->getByName($conversionName); $urlGenerator->setConversion($conversion); } return $urlGenerator; } public static function guardAgainstInvalidUrlGenerator(string $urlGeneratorClass): void { if (! class_exists($urlGeneratorClass)) { throw InvalidUrlGenerator::doesntExist($urlGeneratorClass); } if (! is_subclass_of($urlGeneratorClass, UrlGenerator::class)) { throw InvalidUrlGenerator::doesNotImplementUrlGenerator($urlGeneratorClass); } } }
SAVE
CANCEL