<?php declare(strict_types=1); /** * @copyright 2021 Ad Aures * @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3 * @link https://castopod.org/ */ namespace App\Libraries; use App\Entities\Podcast; use Modules\Fediverse\Objects\ActorObject; class PodcastActor extends ActorObject { protected string $rssFeed; protected string $language; protected string $category; protected string $episodes; public function __construct(Podcast $podcast) { parent::__construct($podcast->actor); $this->context[] = 'https://github.com/Podcastindex-org/activitypub-spec-work/blob/main/docs/1.0.md'; $this->type = 'Podcast'; $this->rssFeed = $podcast->feed_url; $this->language = $podcast->language_code; $category = ''; if ($podcast->category->parent_id !== null) { $category .= $podcast->category->parent->apple_category . ' › '; } $category .= $podcast->category->apple_category; $this->category = $category; $this->episodes = url_to('podcast-episodes', esc($podcast->handle)); } }