'boolean', 'force_pass_reset' => 'boolean', 'podcast_role' => '?string', 'podcast_id' => '?integer', ]; /** * Returns the podcasts the user is contributing to * * @return \App\Entities\Podcast[] */ public function getPodcasts() { if (empty($this->id)) { throw new \RuntimeException( 'Users must be created before getting podcasts.' ); } if (empty($this->podcasts)) { $this->podcasts = (new PodcastModel())->getUserPodcasts($this->id); } return $this->podcasts; } /** * Returns a podcast the user is contributing to * * @return \App\Entities\Podcast */ public function getPodcast() { if (empty($this->podcast_id)) { throw new \RuntimeException( 'Podcast_id must be set before getting podcast.' ); } if (empty($this->podcast)) { $this->podcast = (new PodcastModel())->getPodcastById( $this->podcast_id ); } return $this->podcast; } }