/** * @param array $result */ protected function postSerializeAttachment(array &$result) { if (!empty($result['file'])) { $result['file'] = $this->attachmentManager->getFileRestApiUrl($result['file'], $this->class, $result['id']); } // move all attachment association fields into 'target' field $result['target'] = null; $attachmentTargets = $this->getAttachmentTargets(); foreach ($attachmentTargets as $targetClass => $fieldName) { if (null !== $result[$fieldName]) { $result['target'] = ['entity' => $targetClass, 'id' => $result[$fieldName]]; } } foreach ($attachmentTargets as $targetClass => $fieldName) { unset($result[$fieldName]); } }
/** * @param array $result */ protected function postSerializeContact(array &$result) { // @todo: an 'email' field is added only for backward compatibility with previous API $email = null; if (!empty($result['emails'])) { foreach ($result['emails'] as $item) { if ($item['primary']) { $email = $item['email']; break; } } } $result['email'] = $email; if (!empty($result['picture'])) { $result['picture'] = $this->attachmentManager->getFileRestApiUrl($result['picture'], $this->class, $result['id']); } }