From 74e7d68ac834885c4b89ee6e7d60db2157165799 Mon Sep 17 00:00:00 2001 From: Yassine Doghri <yassine@doghri.fr> Date: Sun, 23 Jan 2022 19:58:30 +0000 Subject: [PATCH] fix: add category_label component to include parent category in about podcast page --- app/Helpers/components_helper.php | 17 +++++++++++++++++ app/Helpers/seo_helper.php | 2 +- app/Libraries/PodcastActor.php | 2 +- themes/cp_app/podcast/about.php | 8 ++------ 4 files changed, 21 insertions(+), 8 deletions(-) diff --git a/app/Helpers/components_helper.php b/app/Helpers/components_helper.php index 4502c0f201..57c4ead5b7 100644 --- a/app/Helpers/components_helper.php +++ b/app/Helpers/components_helper.php @@ -7,6 +7,8 @@ declare(strict_types=1); * @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3 * @link https://castopod.org/ */ + +use App\Entities\Category; use App\Entities\Location; use CodeIgniter\I18n\Time; use CodeIgniter\View\Table; @@ -331,3 +333,18 @@ if (! function_exists('explicit_badge')) { } // ------------------------------------------------------------------------ + + +if (! function_exists('category_label')) { + function category_label(Category $category): string + { + $categoryLabel = ''; + if ($category->parent_id !== null) { + $categoryLabel .= lang('Podcast.category_options.' . $category->parent->code) . ' › '; + } + + return $categoryLabel . lang('Podcast.category_options.' . $category->code); + } +} + +// ------------------------------------------------------------------------ diff --git a/app/Helpers/seo_helper.php b/app/Helpers/seo_helper.php index 3a6299e7f7..c24ac4c3b4 100644 --- a/app/Helpers/seo_helper.php +++ b/app/Helpers/seo_helper.php @@ -23,7 +23,7 @@ if (! function_exists('get_podcast_metatags')) { { $category = ''; if ($podcast->category->parent_id !== null) { - $category .= $podcast->category->parent->apple_category . ' > '; + $category .= $podcast->category->parent->apple_category . ' › '; } $category .= $podcast->category->apple_category; diff --git a/app/Libraries/PodcastActor.php b/app/Libraries/PodcastActor.php index cfb9842100..ac12be1c32 100644 --- a/app/Libraries/PodcastActor.php +++ b/app/Libraries/PodcastActor.php @@ -37,7 +37,7 @@ class PodcastActor extends ActorObject $category = ''; if ($podcast->category->parent_id !== null) { - $category .= $podcast->category->parent->apple_category . ' > '; + $category .= $podcast->category->parent->apple_category . ' › '; } $category .= $podcast->category->apple_category; diff --git a/themes/cp_app/podcast/about.php b/themes/cp_app/podcast/about.php index 2a1178c9ad..f0084e8e90 100644 --- a/themes/cp_app/podcast/about.php +++ b/themes/cp_app/podcast/about.php @@ -6,15 +6,11 @@ <div class="mb-2"><?= $podcast->description_html ?></div> <div class="flex gap-x-4 gap-y-2"> <span class="px-2 py-1 text-sm font-semibold border rounded-sm border-subtle bg-highlight"> - <?= lang( - 'Podcast.category_options.' . $podcast->category->code, -) ?> + <?= category_label($podcast->category) ?> </span> <?php foreach ($podcast->other_categories as $other_category): ?> <span class="px-2 py-1 text-sm font-semibold border rounded-sm border-subtle bg-highlight"> - <?= lang( - 'Podcast.category_options.' . $other_category->code, -) ?> + <?= category_label($other_category) ?> </span> <?php endforeach; ?> </div> -- GitLab