<?= helper('page') ?>

<!DOCTYPE html>
<html lang="<?= service('request')->getLocale() ?>">

<head>
    <meta charset="UTF-8"/>
    <title><?= $podcast->title ?></title>
    <meta name="description" content="<?= $podcast->description ?>"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
    <link rel="shortcut icon" type="image/png" href="/favicon.ico" />
    <link rel="stylesheet" href="/assets/index.css"/>
    <link rel="canonical" href="<?= current_season_url() ?>" />
    <link type="application/rss+xml" rel="alternate" title="<?= $podcast->title ?>" href="<?= $podcast->feed_url ?>"/>
    <script src="/assets/podcast.js" type="module" defer></script>
    <meta property="og:title" content="<?= $podcast->title ?>" />
    <meta property="og:locale" content="<?= $podcast->language_code ?>" />
    <meta property="og:site_name" content="<?= $podcast->title ?>" />
    <meta property="og:url" content="<?= current_season_url() ?>" />
    <meta property="og:image" content="<?= $podcast->image->large_url ?>" />
    <meta property="og:image:width" content="<?= config('Images')
        ->largeSize ?>" />
    <meta property="og:image:height" content="<?= config('Images')
        ->largeSize ?>" />
    <meta property="og:description" content="<?= $episode->description ?>" />
    <meta name="twitter:card" content="summary_large_image" />
</head>

<body class="flex flex-col min-h-screen">
    <main class="flex-1 bg-gray-200">
        <header class="border-b bg-gradient-to-tr from-gray-900 to-gray-800">
            <div class="flex flex-col items-center justify-center md:items-stretch md:mx-auto md:container md:py-12 md:flex-row ">
                <img src="<?= $podcast->image->medium_url ?>"
                alt="<?= $podcast->title ?>" class="object-cover w-full max-w-xs m-4 rounded-lg shadow-xl" />
                <div class="bg-white w-fullp-4 md:max-w-md md:text-white md:bg-transparent">
                    <h1 class="text-2xl font-semibold leading-tight"><?= $podcast->title ?> <span class="text-lg font-normal opacity-75">@<?= $podcast->name ?></span></h1>
                    <div class="flex items-center mb-4">
                        <address>
                            <?= lang('Podcast.by', [
                                'publisher' => $podcast->publisher,
                            ]) ?>
                        </address>
                        <?= $podcast->parental_advisory === 'explicit'
                            ? '<span class="px-1 ml-2 text-xs font-semibold leading-tight tracking-wider uppercase border-2 border-gray-700 rounded md:border-white">' .
                                lang('Common.explicit') .
                                '</span>'
                            : '' ?>
                    </div>
                    <div class="inline-flex">
                        <?= anchor(
                            route_to('podcast_feed', $podcast->name),
                            icon('rss', 'mr-2') . lang('Podcast.feed'),
                            [
                                'class' =>
                                    'text-white bg-gradient-to-r from-orange-400 to-red-500 hover:to-orange-500 hover:bg-orange-500 inline-flex items-center px-2 py-1 mb-2 font-semibold rounded-lg shadow-md hover:bg-orange-600',
                            ]
                        ) ?>
                    <?php foreach ($podcast->platforms as $platform): ?>
                        <?php if ($platform->is_visible): ?>
                            <a href="<?= $platform->link_url ?>" title="<?= $platform->label ?>" target="_blank" rel="noopener noreferrer" class="ml-2">
                            <?= platform_icon($platform->name, 'h-8') ?>
                            </a>
                        <?php endif; ?>
                    <?php endforeach; ?>
                    </div>
                    <div class="mb-2 opacity-75">
                        <?= $podcast->description_html ?>
                    </div>
                    <span class="px-2 py-1 mb-2 mr-2 text-sm text-gray-700 bg-gray-200 rounded">
                        <?= lang(
                            'Podcast.category_options.' .
                                $podcast->category->code
                        ) ?>
                    </span>
                    <?php foreach (
                        $podcast->other_categories
                        as $other_category
                    ): ?>
                        <span class="px-2 py-1 mb-2 mr-2 text-sm text-gray-700 bg-gray-200 rounded">
                            <?= lang(
                                'Podcast.category_options.' .
                                    $other_category->code
                            ) ?>
                        </span>
                    <?php endforeach; ?>
                </div>
            </div>
        </header>

        <section class="flex flex-col">
            <nav class="inline-flex justify-center px-4 bg-gray-100 border-b">
                <?php foreach ($episodesNav as $link): ?>
                    <?= anchor(
                        $link['route'],
                        $link['label'] .
                            ' (' .
                            $link['number_of_episodes'] .
                            ')',
                        [
                            'class' =>
                                'px-2 py-1 font-semibold ' .
                                ($link['is_active']
                                    ? 'border-b-2 border-gray-600'
                                    : 'text-gray-600 hover:text-gray-900'),
                        ]
                    ) ?>
                <?php endforeach; ?>
            </nav>
            <div class="container py-6 mx-auto">
                <?php if ($episodes): ?>
                    <h1 class="px-4 mb-2 text-xl text-center">
                    <?php if ($activeQuery['type'] == 'year'): ?>
                        <?= lang('Podcast.list_of_episodes_year', [
                            'year' => $activeQuery['value'],
                        ]) ?> (<?= count($episodes) ?>)
                    <?php elseif ($activeQuery['type'] == 'season'): ?>
                        <?= lang('Podcast.list_of_episodes_season', [
                            'seasonNumber' => $activeQuery['value'],
                        ]) ?> (<?= count($episodes) ?>)
                    <?php endif; ?>
                    </h1>
                    <?php foreach ($episodes as $episode): ?>
                        <article class="flex w-full max-w-lg p-4 mx-auto">
                            <img
                            loading="lazy"
                            src="<?= $episode->image->thumbnail_url ?>"
                            alt="<?= $episode->title ?>" class="object-cover w-20 h-20 mr-2 rounded-lg" />
                            <div class="flex flex-col flex-1">
                                <a class="text-sm hover:underline" href="<?= $episode->link ?>">
                                    <h2 class="inline-flex justify-between w-full font-bold leading-none group">
                                        <span class="mr-1 group-hover:underline"><?= $episode->title ?></span>
                                        <?= episode_numbering(
                                            $episode->number,
                                            $episode->season_number,
                                            'text-xs font-bold text-gray-600',
                                            true
                                        ) ?>
                                    </h2>
                                </a>
                                <div class="mb-2 text-xs">
                                    <time
                                    pubdate
                                    datetime="<?= $episode->published_at->format(
                                        DateTime::ATOM
                                    ) ?>"
                                    title="<?= $episode->published_at ?>">
                                    <?= lang('Common.mediumDate', [
                                        $episode->published_at,
                                    ]) ?>
                                    </time>
                                    <span class="mx-1">•</span>
                                    <time datetime="PT<?= $episode->enclosure_duration ?>S">
                                        <?= format_duration(
                                            $episode->enclosure_duration
                                        ) ?>
                                    </time>
                                </div>
                                <audio controls preload="none" class="w-full mt-auto">
                                    <source src="<?= $episode->enclosure_web_url ?>" type="<?= $episode->enclosure_type ?>">
                                    Your browser does not support the audio tag.
                                </audio>
                            </div>
                        </article>
                    <?php endforeach; ?>
                <?php else: ?>
                    <h1 class="px-4 mb-2 text-xl text-center"><?= lang(
                        'Podcast.no_episode'
                    ) ?></h1>
                    <p class="italic text-center"><?= lang(
                        'Podcast.no_episode_hint'
                    ) ?></p>
                <?php endif; ?>
            </div>
        </section>
    </main>
    <footer class="px-2 py-4 border-t ">
        <div class="container flex flex-col items-center justify-between mx-auto text-xs md:flex-row ">
            <?= render_page_links('inline-flex mb-4 md:mb-0') ?>
            <div class="flex flex-col items-center md:items-end">
                <p><?= $podcast->copyright ?></p>
                <p><?= lang('Common.powered_by', [
                    'castopod' =>
                        '<a class="underline hover:no-underline" href="https://castopod.org" target="_blank" rel="noreferrer noopener">Castopod</a>',
                ]) ?></p>
            </div>
        </div>
    </footer>
</body>