69 lines
2.5 KiB
PHP
69 lines
2.5 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Skeleton subclass for representing a row from the 'podcast' table.
|
|
*
|
|
* You should add additional methods to this class to meet the
|
|
* application requirements. This class will only be generated as
|
|
* long as it does not already exist in the output directory.
|
|
*/
|
|
class Podcast extends BasePodcast
|
|
{
|
|
/**
|
|
* Override this function so it returns its child class fields as well.
|
|
* Child class will either be ImportedPodcast or StationPodcast.
|
|
*
|
|
* @param string $keyType
|
|
* @param bool $includeLazyLoadColumns
|
|
* @param array $alreadyDumpedObjects
|
|
* @param bool $includeForeignObjects
|
|
*
|
|
* @return array
|
|
*/
|
|
public function toArray($keyType = BasePeer::TYPE_PHPNAME, $includeLazyLoadColumns = true, $alreadyDumpedObjects = [], $includeForeignObjects = false)
|
|
{
|
|
$podcastArray = parent::toArray($keyType);
|
|
|
|
$importedPodcast = ImportedPodcastQuery::create()->filterByDbPodcastId($this->getDbId())->findOne();
|
|
$stationPodcast = StationPodcastQuery::create()->filterByDbPodcastId($this->getDbId())->findOne();
|
|
if (!is_null($importedPodcast)) {
|
|
$importedPodcastArray = $importedPodcast->toArray($keyType);
|
|
|
|
// unset these values because we already have the podcast id in $podcastArray
|
|
// and we don't need the imported podcast ID
|
|
unset($importedPodcastArray['id'], $importedPodcastArray['podcast_id']);
|
|
|
|
return array_merge($podcastArray, $importedPodcastArray);
|
|
}
|
|
if (!is_null($stationPodcast)) {
|
|
// For now just return $podcastArray because StationPodcast objects do not have any
|
|
// extra fields we want to return. This may change in the future.
|
|
return $podcastArray;
|
|
}
|
|
|
|
return $podcastArray;
|
|
}
|
|
|
|
/**
|
|
* Override this function so it updates the child class as well.
|
|
* Child class will either be ImportedPodcast or StationPodcast.
|
|
*
|
|
* @param array $arr
|
|
* @param string $keyType
|
|
*
|
|
* @throws Exception
|
|
* @throws PropelException
|
|
*/
|
|
public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME)
|
|
{
|
|
parent::fromArray($arr, $keyType);
|
|
|
|
$importedPodcast = ImportedPodcastQuery::create()->filterByDbPodcastId($this->getDbId())->findOne();
|
|
if (!is_null($importedPodcast)) {
|
|
$importedPodcast->fromArray($arr, $keyType);
|
|
$importedPodcast->save();
|
|
}
|
|
// TODO: station podcast
|
|
}
|
|
}
|