0
0
mirror of https://github.com/anthonyaxenov/iptv.git synced 2024-11-21 13:04:43 +00:00

Ленивая подгрузка эскиза для отсутствующего логотипа

This commit is contained in:
Anthony Axenov 2024-09-25 09:06:56 +08:00
parent 4e659c0abf
commit 70e25ded66
Signed by: anthony
GPG Key ID: EA9EC32FF7CCD4EC
2 changed files with 13 additions and 3 deletions

View File

@ -73,8 +73,7 @@ class PlaylistController extends Controller
}
if ($logo->size() === 0) {
Flight::notFound();
die;
$logo->setDefault();
}
$logo->store();

View File

@ -19,7 +19,7 @@ class ChannelLogo implements \Stringable
/**
* @var string|null Путь к файлу изображению на диске
*/
public readonly ?string $path;
protected ?string $path;
/**
* @var string|null MIME-тип изображения
@ -114,6 +114,17 @@ class ChannelLogo implements \Stringable
return is_string($this->rawData);
}
/**
* Считывает дефолтный эскиз вместо логотипа
*
* @return bool
*/
public function setDefault(): bool
{
$this->path = root_path('public/no-tvg-logo.png');
return$this->readFile();
}
/**
* Возвращает base64-кодированное изображение
*