diff --git a/app/Entities/Media/Image.php b/app/Entities/Media/Image.php index fa137f67cc1aef99f097efcf8b477f4a36e80083..b379b0382ed32badbd658eeacc12e693b70ccf7a 100644 --- a/app/Entities/Media/Image.php +++ b/app/Entities/Media/Image.php @@ -82,7 +82,7 @@ class Image extends BaseMedia $this->deleteSizes(); } - private function saveSizes(): void + public function saveSizes(): void { // save derived sizes $imageService = service('image'); diff --git a/modules/Admin/Controllers/SettingsController.php b/modules/Admin/Controllers/SettingsController.php index be84ea3d0da4b204b11a824d51b9afc39dc5add3..7f91371bbf2fa0cb38f38ba3c79bd77fe88bafd6 100644 --- a/modules/Admin/Controllers/SettingsController.php +++ b/modules/Admin/Controllers/SettingsController.php @@ -110,7 +110,10 @@ class SettingsController extends BaseController $allPodcasts = (new PodcastModel())->findAll(); foreach ($allPodcasts as $podcast) { - $podcastImages = glob(ROOTPATH . "public/media/podcasts/{$podcast->handle}/*_*"); + $podcastImages = glob( + ROOTPATH . 'public/' . config('App')->mediaRoot . "/podcasts/{$podcast->handle}/*_*{jpg,png,webp}", + GLOB_BRACE + ); if ($podcastImages) { foreach ($podcastImages as $podcastImage) { @@ -119,19 +122,22 @@ class SettingsController extends BaseController } } } - $podcast->setCover($podcast->cover); - if ($podcast->banner_path !== null) { - $podcast->setBanner($podcast->banner); + $podcast->cover->saveSizes(); + if ($podcast->banner_id !== null) { + $podcast->banner->saveSizes(); } foreach ($podcast->episodes as $episode) { - if ($episode->cover_path !== null) { - $episode->setCover($episode->cover); + if ($episode->cover_id !== null) { + $episode->cover->saveSizes(); } } } - $personsImages = glob(ROOTPATH . 'public/media/persons/*_*'); + $personsImages = glob( + ROOTPATH . 'public/' . config('App')->mediaRoot . '/persons/*_*{jpg,png,webp}', + GLOB_BRACE + ); if ($personsImages) { foreach ($personsImages as $personsImage) { if (is_file($personsImage)) { @@ -142,8 +148,8 @@ class SettingsController extends BaseController $persons = (new PersonModel())->findAll(); foreach ($persons as $person) { - if ($person->avatar_path !== null) { - $person->setAvatar($person->avatar); + if ($person->avatar_id !== null) { + $person->avatar->saveSizes(); } } diff --git a/themes/cp_app/podcast/about.php b/themes/cp_app/podcast/about.php index 50a27c33b9bc53640fd8a08cd82fb1206d46aa4e..3ea8d70eab84f22ba676b364896bf7721b30951a 100644 --- a/themes/cp_app/podcast/about.php +++ b/themes/cp_app/podcast/about.php @@ -40,7 +40,7 @@ <?= location_link($podcast->location, 'text-xs font-semibold p-2') ?> <?php endif; ?> </div> - <div class="mt-4"> + <div class="mt-6"> <h2 class="text-xs font-bold tracking-wider text-gray-600 uppercase border-b-2 border-subtle font-display"><?= lang('Podcast.stats.title') ?></h2> <div class="flex flex-col text-sm"> <?php foreach ($stats as $key => $value): ?>