Skip to content
Snippets Groups Projects
Actor.php 1.41 KiB
Newer Older
  • Learn to ignore specific revisions
  • /**
     * @copyright  2020 Podlibre
     * @license    https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
     * @link       https://castopod.org/
     */
    
    namespace App\Entities;
    
    use App\Models\PodcastModel;
    
    use Modules\Fediverse\Entities\Actor as FediverseActor;
    
    /**
     * @property Podcast|null $podcast
     * @property boolean $is_podcast
     */
    
        public function getIsPodcast(): bool
    
        public function getPodcast(): ?Podcast
    
                throw new RuntimeException('Podcast id must be set before getting associated podcast.');
    
            if (! $this->podcast instanceof Podcast) {
    
                $this->podcast = (new PodcastModel())->getPodcastByActorId($this->id);
    
    
        public function getAvatarImageUrl(): string
        {
            if ($this->podcast !== null) {
                return $this->podcast->cover->thumbnail_url;
            }
    
            return $this->attributes['avatar_image_url'];
        }
    
        public function getAvatarImageMimetype(): string
        {
            if ($this->podcast !== null) {
                return $this->podcast->cover->thumbnail_mimetype;
            }
    
            return $this->attributes['avatar_image_mimetype'];
        }