<!DOCTYPE html> <html lang="<?= service('request')->getLocale() ?>"> <head> <meta charset="UTF-8" /> <title><?= $episode->title ?></title> <meta name="description" content="<?= htmlspecialchars($episode->description) ?>"/> <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" /> <link rel="stylesheet" href="/assets/index.css" /> <link rel="canonical" href="<?= $episode->link ?>" /> </head> <body> <div class="flex w-full p-1 md:p-2"style="background: <?= $theme[ 'background' ] ?>; color: <?= $theme['text'] ?>;"> <img src="<?= $episode->image ->medium_url ?>" alt="<?= $episode->title ?>" class="w-32 h-32 md:w-64 md:h-64" /> <div class="flex-grow pl-4"> <div class="flex"> <a href="<?= route_to('podcast', $podcast->name) ?>" style="color: <?= $theme['text'] ?>;" class="flex flex-col text-base leading-tight opacity-50 md:text-lg hover:opacity-100" target="_blank"> <?= $podcast->title ?> </a> <address class="ml-2 text-xs opacity-50 md:text-sm"> <?= lang('Podcast.by', [ 'publisher' => $podcast->publisher, ]) ?></address> </div> <div class="flex mt-1 space-x-2 md:space-x-4 md:mt-3 md:top-0 md:mr-4 md:right-0 md:absolute "> <?php if ($podcast->has_social_platforms): ?> <div class="flex space-x-1"> <?php foreach ( $podcast->social_platforms as $socialPlatform ): ?> <?php if ( $socialPlatform->is_on_embeddable_player ): ?> <?= anchor( $socialPlatform->link_url, platform_icon( $socialPlatform->type, $socialPlatform->slug, 'h-4 md:h-6' ), [ 'target' => '_blank', 'rel' => 'noopener noreferrer', 'title' => $socialPlatform->label, 'class' => 'opacity-50 hover:opacity-100', ] ) ?> <?php endif; ?> <?php endforeach; ?> </div> <?php endif; ?> <?php if ($podcast->has_funding_platforms): ?> <div class="flex space-x-1"> <?php foreach ( $podcast->funding_platforms as $fundingPlatform ): ?> <?php if ( $fundingPlatform->is_on_embeddable_player ): ?> <?= anchor( $fundingPlatform->link_url, platform_icon( $fundingPlatform->type, $fundingPlatform->slug, 'h-4 md:h-6' ), [ 'target' => '_blank', 'rel' => 'noopener noreferrer', 'title' => $fundingPlatform->label, 'class' => 'opacity-50 hover:opacity-100', ] ) ?> <?php endif; ?> <?php endforeach; ?> </div> <?php endif; ?> <div class="flex space-x-1"> <?php foreach ( $podcast->podcasting_platforms as $podcastingPlatform ): ?> <?php if ($podcastingPlatform->is_on_embeddable_player): ?> <?= anchor( $podcastingPlatform->link_url, platform_icon( $podcastingPlatform->type, $podcastingPlatform->slug, 'h-4 md:h-6' ), [ 'target' => '_blank', 'rel' => 'noopener noreferrer', 'title' => $podcastingPlatform->label, 'class' => 'opacity-50 hover:opacity-100', ] ) ?> <?php endif; ?> <?php endforeach; ?> <?= anchor( route_to('podcast_feed', $podcast->name), icon('rss', 'mr-2') . lang('Podcast.feed'), [ 'target' => '_blank', 'class' => 'text-white h-4 md:h-6 md:text-sm text-xs 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 font-semibold rounded-md md:rounded-lg shadow-md hover:bg-orange-600', ] ) ?> </div> </div> <h1 class="mt-2 text-xl font-semibold opacity-100 md:text-3xl hover:opacity-75"> <a href="<?= $episode->link ?>" style="color: <?= $theme['text'] ?>;" target="_blank"> <?= $episode->title ?> </a> </h1> <div class="flex w-full"> <div style="color: <?= $theme['text'] ?>;" class="text-sm opacity-50 md:text-base"> <?= episode_numbering( $episode->number, $episode->season_number ) ?> <div> <time pubdate datetime="<?= $episode->published_at->format( DateTime::ATOM ) ?>" title="<?= $episode->published_at ?>"> <?= lang('Common.mediumDate', [ $episode->published_at, ]) ?> </time> <span>•</span> <time datetime="PT<?= $episode->enclosure_duration ?>S"> <?= format_duration($episode->enclosure_duration) ?> </time> </div> </div> <?php if ($episode->location_name): ?> <a href="<?= location_url( $episode->location_name, $episode->location_geo, $episode->location_osmid ) ?>" style="color: <?= $theme['inverted'] ?>; background: <?= $theme[ 'text' ] ?>;" class="inline-flex items-center px-3 py-1 mt-1 ml-4 text-xs align-middle rounded-full shadow-xs outline-none opacity-50 md:mt-2 md:text-sm hover:opacity-75 focus:shadow-outline" target="_blank" rel="noreferrer noopener"><?= icon( 'map-pin' ) ?> <?= $episode->location_name ?> </a> <?php endif; ?> </div> <?php if (!empty($persons)): ?> <div class="flex my-2 space-x-1 md:my-4 md:space-x-2"> <?php foreach ($persons as $person): ?> <?php if (!empty($person['information_url'])): ?> <a href="<?= $person['information_url'] ?>" class="hover:opacity-50" target="_blank" rel="noreferrer noopener"> <?php endif; ?> <img src="<?= $person['thumbnail_url'] ?>" alt="<?= $person['full_name'] ?>" title="[<?= $person[ 'full_name' ] ?>] <?= $person['roles'] ?>" class="object-cover h-8 rounded-full md:h-12 md:w-12" /> <?php if (!empty($person['information_url'])): ?> </a> <?php endif; ?> <?php endforeach; ?> </div> <?php endif; ?> <audio controls preload="none" class="flex w-full mt-2 md:mt-4"> <source src="<?= $episode->enclosure_url . (isset($_SERVER['HTTP_REFERER']) ? '?_from=' . parse_url($_SERVER['HTTP_REFERER'], PHP_URL_HOST) : '') ?>" type="<?= $episode->enclosure_type ?>" /> Your browser does not support the audio tag. </audio> </div> <a href="https://castopod.org/" class="absolute bottom-0 right-0 mb-4 mr-4 hover:opacity-75" title="<?= lang('Common.powered_by', [ 'castopod' => 'Castopod', ]) ?>" target="_blank" rel="noopener noreferrer"> <?= platform_icon('podcasting', 'castopod', 'h-6') ?> </a> </div> </body> </html>