protected function serialize($input, $metadata)
{
$output = [];
foreach ($metadata->getFieldMappings() as $field) {
$fieldobj = $this->em->getFieldManager()->get($field['fieldtype'], $field);
$type = $fieldobj->getStorageType();
$key = $field['fieldname'];
// Hack … remove soon
if (!isset($input[$key])) {
continue;
}
if ($this->isJson($input[$key])) {
$input[$key] = json_decode($input[$key], true);
}
$output[$key] = $type->convertToDatabaseValue($input[$key], $this->getPlatform());
}
return $output;
}