getPodcastById( $this->attributes['podcast_id'], ); } public function getEpisode() { if (empty($this->episode_id)) { throw new \RuntimeException( 'Credit must have episode_id before getting episode.', ); } if (empty($this->episode)) { $this->episode = (new EpisodeModel())->getPublishedEpisodeById( $this->episode_id, $this->podcast_id, ); } return $this->episode; } public function getPerson() { if (empty($this->person_id)) { throw new \RuntimeException( 'Credit must have person_id before getting person.', ); } if (empty($this->person)) { $this->person = (new PersonModel())->getPersonById( $this->person_id, ); } return $this->person; } public function getGroupLabel() { if (empty($this->person_group)) { return null; } else { return lang("PersonsTaxonomy.persons.{$this->person_group}.label"); } } public function getRoleLabel() { if (empty($this->person_group) || empty($this->person_role)) { return null; } else { return lang( "PersonsTaxonomy.persons.{$this->person_group}.roles.{$this->person_role}.label", ); } } }