public function up()
{
$dateDataTypes = array();
$this->processConfiguration(ConfigurationManager::CONFIGURATION_TYPE_SETTINGS, function (&$configuration) use(&$dateDataTypes) {
if (isset($configuration['TYPO3']['Neos']['userInterface']['inspector']['dataTypes'])) {
foreach ($configuration['TYPO3']['Neos']['userInterface']['inspector']['dataTypes'] as $dataType => &$dataTypeConfiguration) {
if ($dataTypeConfiguration['editor'] === 'TYPO3.Neos/Inspector/Editors/DateTimeEditor') {
$dateDataTypes[] = $dataType;
if (isset($dataTypeConfiguration['editorOptions']['format'])) {
$dataTypeConfiguration['editorOptions']['format'] = $this->transformFormat($dataTypeConfiguration['editorOptions']['format']);
}
}
}
}
}, true);
$this->processConfiguration('NodeTypes', function (&$configuration) use($dateDataTypes) {
foreach ($configuration as &$nodeType) {
if (isset($nodeType['properties'])) {
foreach ($nodeType['properties'] as &$propertyConfiguration) {
if (isset($propertyConfiguration['type']) && in_array($propertyConfiguration['type'], $dateDataTypes) || isset($propertyConfiguration['ui']['inspector']['editor']) && $propertyConfiguration['ui']['inspector']['editor'] === 'TYPO3.Neos/Inspector/Editors/DateTimeEditor') {
if (isset($propertyConfiguration['ui']['inspector']['editorOptions']['format'])) {
$propertyConfiguration['ui']['inspector']['editorOptions']['format'] = $this->transformFormat($propertyConfiguration['ui']['inspector']['editorOptions']['format']);
}
}
}
}
}
}, true);
}