'body:json_string', 'Activity' => 'is_activity:json_boolean', 'Public' => 'is_public:json_boolean', 'CreatorId' => 'creator_id:json_int', 'PresentationId' => 'presentation_id:json_int', ]; /** * @param null $expand * @param array $fields * @param array $relations * @param array $params * @return array */ public function serialize($expand = null, array $fields = array(), array $relations = array(), array $params = array()) { if (!count($relations)) $relations = $this->getAllowedRelations(); $comment = $this->object; if (!$comment instanceof SummitPresentationComment) return []; $values = parent::serialize($expand, $fields, $relations, $params); if (!empty($expand)) { foreach (explode(',', $expand) as $relation) { switch (trim($relation)) { case 'creator':{ if($comment->getCreatorId() > 0) { unset($values['creator_id']); $values['creator'] = SerializerRegistry::getInstance()->getSerializer($comment->getCreator())->serialize(); } } break; } } } return $values; } }