diff --git a/Classes/Form/Decorator/AbstractFormDefinitionDecorator.php b/Classes/Form/Decorator/AbstractFormDefinitionDecorator.php index 13c79585..94471b14 100644 --- a/Classes/Form/Decorator/AbstractFormDefinitionDecorator.php +++ b/Classes/Form/Decorator/AbstractFormDefinitionDecorator.php @@ -34,13 +34,18 @@ public function __invoke(array $definition, int $currentPage): array { $decorated = []; + $this->formId = $definition['identifier']; $pageElements = $definition['renderables'][$currentPage]['renderables'] ?? []; + $submitLabel = $definition['renderingOptions']['submitButtonLabel'] ?? ''; + $submitLabelFromEditor = []; - $this->formId = $definition['identifier']; + if ($submitLabel !== '') { + $submitLabelFromEditor = ['submitButtonLabel' => $submitLabel]; + } $decorated['id'] = $this->formId; $decorated['api'] = $this->formStatus; - $decorated['i18n'] = $definition['i18n']['properties'] ?? []; + $decorated['i18n'] = [...$submitLabelFromEditor, ...($definition['i18n']['properties'] ?? [])]; $decorated['elements'] = $this->handleRenderables($pageElements); return $this->overrideDefinition($decorated, $definition, $currentPage);