public function getDataForEditmode($data, $object = null, $params = [])
{
$fieldData = [];
$metaData = [];
if (!$data instanceof Object\Localizedfield) {
return [];
}
$result = $this->doGetDataForEditMode($data, $object, $fieldData, $metaData, 1);
// replace the real data with the data for the editmode
foreach ($result["data"] as $language => &$data) {
foreach ($data as $key => &$value) {
$fieldDefinition = $this->getFielddefinition($key);
if ($fieldDefinition instanceof CalculatedValue) {
$childData = new Object\Data\CalculatedValue($fieldDefinition->getName());
$childData->setContextualData("localizedfield", $this->getName(), null, $language);
$value = $fieldDefinition->getDataForEditmode($childData, $object, $params);
} else {
$value = $fieldDefinition->getDataForEditmode($value, $object, $params);
}
}
}
return $result;
}