TYPO3 v15 dev-main snapshot ()

This commit is contained in:
2026-08-10 22:31:24 +02:00
commit aad9daaefd
1506 changed files with 94005 additions and 0 deletions
@@ -0,0 +1,395 @@
.. include:: /Includes.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition:
=====================
[finishersDefinition]
=====================
.. _prototypes.prototypeIdentifier.finishersdefinition-properties:
Properties
==========
.. _prototypes.prototypeIdentifier.finishersdefinition-properties-finishersdefinition:
[finishersDefinition]
---------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend/ Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
prototypes:
<prototypeIdentifier>:
finishersDefinition:
[...]
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
Array which defines the available finishers. Every key within this array is called the ``<finisherIdentifier>``.
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier:
<finisherIdentifier>
--------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersdefinition.<finisherIdentifier>
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend/ Backend (form editor)
:aspect:`Mandatory`
Yes
.. :aspect:`Related options`
@ToDo
:aspect:`Default value (for prototype 'standard')`
.. code-block:: yaml
:linenos:
prototypes:
standard:
Closure:
[...]
Confirmation:
[...]
EmailToSender:
[...]
EmailToReceiver:
[...]
DeleteUploads:
[...]
FlashMessage:
[...]
Redirect:
[...]
SaveToDatabase:
[...]
:aspect:`Related options`
- :ref:`"prototypes.prototypeIdentifier.formElementsDefinition.formelementtypeidentifier.formEditor.propertyCollections.finishers.[*].identifier"<prototypes.prototypeIdentifier.formelementsdefinition.formelementtypeidentifier.formeditor.propertycollections.finishers.*.identifier>`
- :ref:`"[FinishersEditor] selectOptions.[*].value"<prototypes.prototypeIdentifier.formelementsdefinition.formelementtypeidentifier.formeditor.editors.*.selectoptions.*.value-finisherseditor>`
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
This array key identifies a finisher. This identifier could be used to attach a finisher to a form.
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-commonproperties:
Common <finisherIdentifier> properties
=============================================
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.implementationClassName:
implementationClassName
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.implementationClassName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeidentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
.. include:: properties/implementationClassName.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.options:
options
-------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.options
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
:aspect:`Default value`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
Array with finisher options.
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.translation.translationFiles:
translation.translationFiles
----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.translation.translationFiles
:aspect:`Data type`
string/ array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
Depends (see :ref:`concrete element configuration <prototypes.prototypeIdentifier.formelementsdefinition.formelementtypeidentifier-concreteconfigurations>`)
:aspect:`Good to know`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
Filesystem path(s) to translation files which should be searched for finisher translations.
If the property is undefined, - :ref:`"prototypes.prototypeIdentifier.formElementsDefinition.Form.renderingOptions.translation.translationFiles"<prototypes.prototypeIdentifier.formelementsdefinition.form.renderingoptions.translation.translationfiles>` will be used.
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.formeditor:
formEditor
----------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.formEditor
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Recommended
:aspect:`Default value`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
Array with configurations for the ``form editor``
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.formeditor.iconidentifier:
formeditor.iconIdentifier
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.formEditor.iconIdentifier
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: properties/iconIdentifier.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.formeditor.label:
formeditor.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.formEditor.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
:aspect:`Good to know`
- :ref:`"Translate form editor settings"<concepts-formeditor-translation-formeditor>`
:aspect:`Description`
.. include:: properties/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.formeditor.predefineddefaults:
formeditor.predefinedDefaults
-----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.formEditor.predefinedDefaults
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
No
:aspect:`Default value`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: properties/predefinedDefaults.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.formengine:
FormEngine
----------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.FormEngine
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (plugin)
:aspect:`Mandatory`
No
:aspect:`Default value`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
Array with configurations for the ``form plugin``
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.FormEngine.label:
FormEngine.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.FormEngine.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (plugin)
:aspect:`Mandatory`
No
:aspect:`Default value`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
:aspect:`Good to know`
- :ref:`"Translate form plugin settings"<concepts-formplugin-translation-formengine>`
:aspect:`Description`
.. include:: properties/formEngine/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.FormEngine.elements:
FormEngine.elements
-------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.<finisherIdentifier>.FormEngine.elements
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (plugin)
:aspect:`Mandatory`
No
:aspect:`Default value`
Depends (see :ref:`concrete finishers configuration <prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations>`)
:aspect:`Good to know`
- :ref:`"Translate form plugin settings"<concepts-formplugin-translation-formengine>`
:aspect:`Description`
.. include:: properties/formEngine/elements.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier-concreteconfigurations:
Concrete configurations
=======================
.. toctree::
finishers/Closure
finishers/Confirmation
finishers/EmailToReceiver
finishers/EmailToSender
finishers/DeleteUploads
finishers/FlashMessage
finishers/Redirect
finishers/SaveToDatabase
@@ -0,0 +1,186 @@
.. include:: /Includes.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.closure:
=========
[Closure]
=========
.. _prototypes.prototypeIdentifier.finishersdefinitionclosure-properties:
Properties
==========
.. _prototypes.prototypeIdentifier.finishersdefinition.closure.implementationclassname:
implementationClassName
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Closure.implementationClassName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 2
Closure:
implementationClassName: TYPO3\CMS\Form\Domain\Finishers\ClosureFinisher
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
.. include:: ../properties/implementationClassName.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.closure.options.closure:
options.closure
---------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Closure.options.closure
:aspect:`Data type`
\Closure
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
null
.. :aspect:`Good to know`
ToDo
- :ref:`"Closure finisher"<apireference-finisheroptions-closurefinisher>`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
The closure which is invoked if the finisher is triggered.
.. _prototypes.prototypeIdentifier.finishersdefinition.closure.formeditor.iconidentifier:
formeditor.iconIdentifier
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Closure.formEditor.iconIdentifier
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
Closure:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.Closure.editor.header.label
predefinedDefaults:
options:
closure: ''
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/iconIdentifier.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.closure.formeditor.label:
formeditor.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Closure.formEditor.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4
Closure:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.Closure.editor.header.label
predefinedDefaults:
options:
closure: ''
:aspect:`Good to know`
- :ref:`"Translate form editor settings"<concepts-formeditor-translation-formeditor>`
:aspect:`Description`
.. include:: ../properties/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.closure.formeditor.predefineddefaults:
formeditor.predefinedDefaults
-----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Closure.formEditor.predefinedDefaults
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
No
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 5-
Closure:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.Closure.editor.header.label
predefinedDefaults:
options:
closure: ''
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/predefinedDefaults.rst.txt
@@ -0,0 +1,377 @@
.. include:: /Includes.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation:
==============
[Confirmation]
==============
.. _prototypes.prototypeIdentifier.finishersdefinitionconfirmation-properties:
Properties
==========
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.implementationclassname:
implementationClassName
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.implementationClassName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 2
Confirmation:
implementationClassName: TYPO3\CMS\Form\Domain\Finishers\ConfirmationFinisher
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
.. include:: ../properties/implementationClassName.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.options.message:
options.message
---------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.options.message
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
The form has been submitted.
:aspect:`Good to know`
- :ref:`"Confirmation finisher"<apireference-finisheroptions-confirmationfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
The text which is shown if the finisher is invoked.
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.options.contentelementuid:
options.contentElementUid
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.options.contentElementUid
:aspect:`Data type`
integer
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Description`
The option "contentElementUid" can be used to render a content element.
If contentElementUid is set, the option "message" will be ignored.
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.options.typoscriptobjectpath:
options.typoscriptObjectPath
----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.options.typoscriptObjectPath
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
'lib.tx_form.contentElementRendering'
:aspect:`Description`
The option "typoscriptObjectPath" can be used to render the content element (options.contentElementUid) through a typoscript lib.
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.options.variables:
options.variables
-----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.options.variables
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Description`
Variables which should be available within the template.
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.options.templatename:
options.templateName
--------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.options.templateName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
'Confirmation'
:aspect:`Description`
Define a custom template name which should be used.
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.options.templaterootpaths:
options.templateRootPaths
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.options.templateRootPaths
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
Confirmation:
options:
templateRootPaths:
10: 'EXT:form/Resources/Private/Frontend/Templates/Finishers/Confirmation/'
layoutRootPaths:
10: 'EXT:form/Resources/Private/Frontend/Layout/Finishers/Confirmation/'
partialRootPaths:
10: 'EXT:form/Resources/Private/Frontend/Partials/Finishers/Confirmation/'
:aspect:`Description`
Used to define several paths for templates, which will be tried in reversed order (the paths are searched from bottom to top).
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.options.translation.propertiesExcludedFromTranslation:
options.translation.propertiesExcludedFromTranslation
-----------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.options.translation.propertiesExcludedFromTranslation
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Confirmation finisher"<apireference-finisheroptions-confirmationfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
Localization from translation files will be skipped for all specified finisher options.
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.options.translation.translationfiles:
options.translation.translationFiles
------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.options.translation.translationFiles
:aspect:`Data type`
string/ array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Confirmation finisher"<apireference-finisheroptions-confirmationfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
If set, this translation file(s) will be used for finisher option translations.
If not set, the translation file(s) from the 'Form' element will be used.
Read :ref:`Translate finisher options<concepts-frontendrendering-translation-finishers>` for more informations.
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.formeditor.iconidentifier:
formeditor.iconIdentifier
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.formEditor.iconIdentifier
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
Confirmation:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.Confirmation.editor.header.label
predefinedDefaults:
options:
message: ''
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/iconIdentifier.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.formeditor.label:
formeditor.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.formEditor.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4
Confirmation:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.Confirmation.editor.header.label
predefinedDefaults:
options:
message: ''
:aspect:`Good to know`
- :ref:`"Translate form editor settings"<concepts-formeditor-translation-formeditor>`
:aspect:`Description`
.. include:: ../properties/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.confirmation.formeditor.predefineddefaults:
formeditor.predefinedDefaults
-----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Confirmation.formEditor.predefinedDefaults
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
No
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 5-
Confirmation:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.Confirmation.editor.header.label
predefinedDefaults:
options:
message: ''
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/predefinedDefaults.rst.txt
@@ -0,0 +1,114 @@
.. include:: /Includes.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.deleteuploads:
===============
[DeleteUploads]
===============
.. _prototypes.prototypeIdentifier.finishersdefinitiondeleteuploads-properties:
Properties
==========
.. _prototypes.prototypeIdentifier.finishersdefinition.deleteuploads.implementationclassname:
implementationClassName
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.DeleteUploads.implementationClassName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 2
DeleteUploads:
implementationClassName: TYPO3\CMS\Form\Domain\Finishers\DeleteUploadsFinisher
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
Array which defines the available finishers. Every key within this array is called the ``<finisherIdentifier>``
.. _prototypes.prototypeIdentifier.finishersdefinition.deleteuploads.formeditor.iconidentifier:
formeditor.iconIdentifier
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.DeleteUploads.formEditor.iconIdentifier
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
DeleteUploads:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.DeleteUploads.editor.header.label
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/iconIdentifier.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.deleteuploads.formeditor.label:
formeditor.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.DeleteUploads.formEditor.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4
DeleteUploads:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.DeleteUploads.editor.header.label
:aspect:`Good to know`
- :ref:`"Translate form editor settings"<concepts-formeditor-translation-formeditor>`
:aspect:`Description`
.. include:: ../properties/label.rst.txt
@@ -0,0 +1,813 @@
.. include:: /Includes.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver:
=================
[EmailToReceiver]
=================
.. _prototypes.prototypeIdentifier.finishersdefinitionemailtoreceiver-properties:
Properties
==========
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.implementationclassname:
implementationClassName
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.implementationClassName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 2
EmailToReceiver:
implementationClassName: TYPO3\CMS\Form\Domain\Finishers\EmailFinisher
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
.. include:: ../properties/implementationClassName.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.subject:
options.subject
---------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.subject
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
Subject of the email.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.recipients:
options.recipients
------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.recipients
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email addresses and names of the recipients (To).
The form editor in the backend module provides a visual UI to enter an arbitrary
amount of recipients.
This option must contain a YAML hash with email addresses as keys and
recipient names as values:
.. code-block:: yaml
recipients:
first@example.org: First Recipient
second@example.org: Second Recipient
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.senderaddress:
options.senderAddress
---------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.senderAddress
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email address of the sender/ visitor (From).
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.sendername:
options.senderName
------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.senderName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
empty string
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Human-readable name of the sender.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.replytorecipients:
options.replyToRecipients
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.replyToRecipients
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email addresses of to be used as reply-to emails.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.carboncopyrecipients:
options.carbonCopyRecipients
----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.carbonCopyRecipients
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email addresses of the copy recipient.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.blindcarbonCopyrecipients:
options.blindCarbonCopyRecipients
---------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.blindCarbonCopyRecipients
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email address of the blind copy recipient.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.addhtmlpart:
options.addHtmlPart
-------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.addHtmlPart
:aspect:`Data type`
bool
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
true
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
If set, mails will contain a plaintext and HTML part, otherwise only a
plaintext part. That way, it can be used to disable HTML and enforce
plaintext-only mails.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.attachuploads:
options.attachUploads
---------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.attachUploads
:aspect:`Data type`
bool
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
true
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
If set, all uploaded items are attached to the email.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.title:
options.title
-------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.title
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
The title, being shown in the email. The templates are based onFluidEmail.
The template renders the title field in the header section right above the
email body. Do not confuse this field with the subject of the email.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.translation.language:
options.translation.language
----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.translation.language
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
If not set, the finisher options are translated depending on the current frontend language (if translations exists).
This option allows you to force translations for a given language isocode, e.g 'da' or 'de'.
Read :ref:`Translate finisher options<concepts-frontendrendering-translation-finishers>` for more informations.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.translation.propertiesExcludedFromTranslation:
options.translation.propertiesExcludedFromTranslation
-----------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.translation.propertiesExcludedFromTranslation
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
Localization from translation files will be skipped for all specified finisher options.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.translation.translationfiles:
options.translation.translationFiles
------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.translation.translationFiles
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
If set, this translation file(s) will be used for finisher option translations.
If not set, the translation file(s) from the 'Form' element will be used.
Read :ref:`Translate finisher options<concepts-frontendrendering-translation-finishers>` for more informations.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.partialrootpaths:
options.partialRootPaths
------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.partialRootPaths
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
:aspect:`Description`
Fluid partial paths.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.layoutrootpaths:
options.layoutRootPaths
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.layoutRootPaths
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
:aspect:`Description`
Fluid layout paths.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.options.variables:
options.variables
-----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.options.variables
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
:aspect:`Description`
Associative array of variables which are available inside the Fluid template.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.formeditor.iconidentifier:
formeditor.iconIdentifier
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.formEditor.iconIdentifier
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
EmailToReceiver:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.EmailToReceiver.editor.header.label
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/iconIdentifier.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.formeditor.label:
formeditor.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.formEditor.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4
EmailToReceiver:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.EmailToReceiver.editor.header.label
:aspect:`Good to know`
- :ref:`"Translate form editor settings"<concepts-formeditor-translation-formeditor>`
:aspect:`Description`
.. include:: ../properties/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.formeditor.predefineddefaults:
formeditor.predefinedDefaults
-----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.formEditor.predefinedDefaults
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
No
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 5-
EmailToReceiver:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.EmailToReceiver.editor.header.label
predefinedDefaults:
options:
subject: ''
recipients: { }
senderAddress: ''
senderName: ''
replyToRecipients: { }
carbonCopyRecipients: { }
blindCarbonCopyRecipients: { }
addHtmlPart: true
attachUploads: true
translation:
language: 'default'
title: ''
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/predefinedDefaults.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.formengine.label:
FormEngine.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.FormEngine.label
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (plugin)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
EmailToReceiver:
FormEngine:
label: tt_content.finishersDefinition.EmailToReceiver.label
:aspect:`Good to know`
- :ref:`"Translate form plugin settings"<concepts-formplugin-translation-formengine>`
:aspect:`Description`
.. include:: ../properties/formEngine/label.rst.txt
@ToDo
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtoreceiver.formengine.elements:
FormEngine.elements
-------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToReceiver.FormEngine.elements
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (plugin)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4-
EmailToReceiver:
FormEngine:
label: tt_content.finishersDefinition.EmailToReceiver.label
elements:
subject:
label: tt_content.finishersDefinition.EmailToReceiver.subject.label
config:
type: input
required: true
recipients:
title: tt_content.finishersDefinition.EmailToReceiver.recipients.label
type: array
section: true
sectionItemKey: email
sectionItemValue: name
el:
_arrayContainer:
type: array
title: tt_content.finishersDefinition.EmailToSender.recipients.item.label
el:
email:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: email
required: true
name:
label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
config:
type: input
senderAddress:
label: tt_content.finishersDefinition.EmailToReceiver.senderAddress.label
config:
type: input
required: true
senderName:
label: tt_content.finishersDefinition.EmailToReceiver.senderName.label
config:
type: input
replyToRecipients:
title: tt_content.finishersDefinition.EmailToReceiver.replyToRecipients.label
type: array
section: true
sectionItemKey: email
sectionItemValue: name
el:
_arrayContainer:
type: array
title: tt_content.finishersDefinition.EmailToSender.replyToRecipients.item.label
el:
email:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: email
required: true
name:
label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
config:
type: input
carbonCopyRecipients:
title: tt_content.finishersDefinition.EmailToReceiver.carbonCopyRecipients.label
type: array
section: true
sectionItemKey: email
sectionItemValue: name
el:
_arrayContainer:
type: array
title: tt_content.finishersDefinition.EmailToSender.carbonCopyRecipients.item.label
el:
email:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: email
required: true
name:
label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
config:
type: input
blindCarbonCopyRecipients:
title: tt_content.finishersDefinition.EmailToReceiver.blindCarbonCopyRecipients.label
type: array
section: true
sectionItemKey: email
sectionItemValue: name
el:
_arrayContainer:
type: array
title: tt_content.finishersDefinition.EmailToSender.blindCarbonCopyRecipients.item.label
el:
email:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: email
required: true
name:
label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
config:
type: input
addHtmlPart:
label: tt_content.finishersDefinition.EmailToReceiver.addHtmlPart.label
config:
type: check
default: 1
translation:
language:
label: tt_content.finishersDefinition.EmailToReceiver.language.label
config:
type: select
renderType: selectSingle
minitems: 1
maxitems: 1
size: 1
items:
10:
- tt_content.finishersDefinition.EmailToReceiver.language.1
- default
title:
label: tt_content.finishersDefinition.EmailToReceiver.title.label
config:
type: input
:aspect:`Good to know`
- :ref:`"Translate form plugin settings"<concepts-formplugin-translation-formengine>`
:aspect:`Description`
.. include:: ../properties/formEngine/elements.rst.txt
@@ -0,0 +1,812 @@
.. include:: /Includes.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender:
=================
[EmailToSender]
=================
.. _prototypes.prototypeIdentifier.finishersdefinitionemailtosender-properties:
Properties
==========
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.implementationclassname:
implementationClassName
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.implementationClassName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 2
EmailToSender:
implementationClassName: TYPO3\CMS\Form\Domain\Finishers\EmailFinisher
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
.. include:: ../properties/implementationClassName.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.subject:
options.subject
---------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.subject
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
Subject of the email.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.recipients:
options.recipients
------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.recipients
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email addresses and names of the recipients (To).
The form editor in the backend module provides a visual UI to enter an arbitrary
amount of recipients.
This option must contain a YAML hash with email addresses as keys and
recipient names as values:
.. code-block:: yaml
recipients:
first@example.org: First Recipient
second@example.org: Second Recipient
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.senderaddress:
options.senderAddress
---------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.senderAddress
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email address of the sender/ visitor (From).
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.sendername:
options.senderName
------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.senderName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
empty string
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Human-readable name of the sender.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.replytorecipients:
options.replyToRecipients
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.replyToRecipients
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email addresses of to be used as reply-to emails.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.carboncopyrecipients:
options.carbonCopyRecipients
----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.carbonCopyRecipients
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email addresses of the copy recipient.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.blindcarboncopyrecipients:
options.blindCarbonCopyRecipients
---------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.blindCarbonCopyRecipients
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Email address of the blind copy recipient.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.addhtmlpart:
options.addHtmlPart
-------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.addHtmlPart
:aspect:`Data type`
bool
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
true
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
If set, mails will contain a plaintext and HTML part, otherwise only a
plaintext part. That way, it can be used to disable HTML and enforce
plaintext-only mails.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.attachuploads:
options.attachUploads
---------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.attachUploads
:aspect:`Data type`
bool
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
true
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
If set, all uploaded items are attached to the email.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.title:
options.title
-------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.title
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
The title, being shown in the email. The templates are based onFluidEmail.
The template renders the title field in the header section right above the
email body. Do not confuse this field with the subject of the email.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.translation.language:
options.translation.language
----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.translation.language
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
If not set, the finisher options are translated depending on the current frontend language (if translations exists).
This option allows you to force translations for a given language isocode, e.g 'da' or 'de'.
Read :ref:`Translate finisher options<concepts-frontendrendering-translation-finishers>` for more informations.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.translation.propertiesExcludedFromTranslation:
options.translation.propertiesExcludedFromTranslation
-----------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.translation.propertiesExcludedFromTranslation
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
Localization from translation files will be skipped for all specified finisher options.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.translation.translationfiles:
options.translation.translationFiles
------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.translation.translationFiles
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
If set, this translation file(s) will be used for finisher option translations.
If not set, the translation file(s) from the 'Form' element will be used.
Read :ref:`Translate finisher options<concepts-frontendrendering-translation-finishers>` for more informations.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.partialrootpaths:
options.partialRootPaths
------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.partialRootPaths
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
:aspect:`Description`
Fluid layout paths.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.layoutrootpaths:
options.layoutRootPaths
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.layoutRootPaths
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
:aspect:`Description`
Fluid partial paths.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.options.variables:
options.variables
-----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.options.variables
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Email finisher"<apireference-finisheroptions-emailfinisher>`
:aspect:`Description`
Associative array of variables which are available inside the Fluid template.
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.formeditor.iconidentifier:
formeditor.iconIdentifier
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.formEditor.iconIdentifier
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
EmailToSender:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.EmailToSender.editor.header.label
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/iconIdentifier.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.formeditor.label:
formeditor.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.formEditor.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4
EmailToSender:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.EmailToSender.editor.header.label
:aspect:`Good to know`
- :ref:`"Translate form editor settings"<concepts-formeditor-translation-formeditor>`
:aspect:`Description`
.. include:: ../properties/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.formeditor.predefineddefaults:
formeditor.predefinedDefaults
-----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.formEditor.predefinedDefaults
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
No
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 5-
EmailToSender:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.EmailToSender.editor.header.label
predefinedDefaults:
options:
subject: ''
recipients: { }
senderAddress: ''
senderName: ''
replyToRecipients: { }
carbonCopyRecipients: { }
blindCarbonCopyRecipients: { }
addHtmlPart: true
attachUploads: true
translation:
language: 'default'
title: ''
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/predefinedDefaults.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.formengine.label:
FormEngine.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.FormEngine.label
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (plugin)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
EmailToSender:
FormEngine:
label: tt_content.finishersDefinition.EmailToSender.label
:aspect:`Good to know`
- :ref:`"Translate form plugin settings"<concepts-formplugin-translation-formengine>`
:aspect:`Description`
.. include:: ../properties/formEngine/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.emailtosender.formengine.elements:
FormEngine.elements
-------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.EmailToSender.FormEngine.elements
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (plugin)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4-
EmailToSender:
FormEngine:
label: tt_content.finishersDefinition.EmailToSender.label
elements:
subject:
label: tt_content.finishersDefinition.EmailToSender.subject.label
config:
type: input
required: true
recipients:
title: tt_content.finishersDefinition.EmailToSender.recipients.label
type: array
section: true
sectionItemKey: email
sectionItemValue: name
el:
_arrayContainer:
type: array
title: tt_content.finishersDefinition.EmailToSender.recipients.item.label
el:
email:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: email
required: true
name:
label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
config:
type: input
senderAddress:
label: tt_content.finishersDefinition.EmailToSender.senderAddress.label
config:
type: input
required: true
senderName:
label: tt_content.finishersDefinition.EmailToSender.senderName.label
config:
type: input
replyToRecipients:
title: tt_content.finishersDefinition.EmailToSender.replyToRecipients.label
type: array
section: true
sectionItemKey: email
sectionItemValue: name
el:
_arrayContainer:
type: array
title: tt_content.finishersDefinition.EmailToSender.replyToRecipients.item.label
el:
email:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: email
required: true
name:
label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
config:
type: input
carbonCopyRecipients:
title: tt_content.finishersDefinition.EmailToSender.carbonCopyRecipients.label
type: array
section: true
sectionItemKey: email
sectionItemValue: name
el:
_arrayContainer:
type: array
title: tt_content.finishersDefinition.EmailToSender.carbonCopyRecipients.item.label
el:
email:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: email
required: true
name:
label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
config:
type: input
blindCarbonCopyRecipients:
title: tt_content.finishersDefinition.EmailToSender.blindCarbonCopyRecipients.label
type: array
section: true
sectionItemKey: email
sectionItemValue: name
el:
_arrayContainer:
type: array
title: tt_content.finishersDefinition.EmailToSender.blindCarbonCopyRecipients.item.label
el:
email:
label: tt_content.finishersDefinition.EmailToSender.recipients.email.label
config:
type: email
required: true
name:
label: tt_content.finishersDefinition.EmailToSender.recipients.name.label
config:
type: input
addHtmlPart:
label: tt_content.finishersDefinition.EmailToSender.addHtmlPart.label
config:
type: check
default: 1
translation:
language:
label: tt_content.finishersDefinition.EmailToSender.language.label
config:
type: select
renderType: selectSingle
minitems: 1
maxitems: 1
size: 1
items:
10:
- tt_content.finishersDefinition.EmailToSender.language.1
- default
title:
label: tt_content.finishersDefinition.EmailToSender.title.label
config:
type: input
:aspect:`Good to know`
- :ref:`"Translate form plugin settings"<concepts-formplugin-translation-formengine>`
:aspect:`Description`
.. include:: ../properties/formEngine/elements.rst.txt
@@ -0,0 +1,372 @@
.. include:: /Includes.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage:
==============
[FlashMessage]
==============
.. _prototypes.prototypeIdentifier.finishersdefinitionflashmessage-properties:
Properties
==========
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.implementationclassname:
implementationClassName
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.implementationClassName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 2
FlashMessage:
implementationClassName: TYPO3\CMS\Form\Domain\Finishers\FlashMessageFinisher
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
.. include:: ../properties/implementationClassName.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.options.messagebody:
options.messageBody
-------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.options.messageBody
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
null
:aspect:`Good to know`
- :ref:`"FlashMessage finisher"<apireference-finisheroptions-flashmessagefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
The flash message body TEXT.
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.options.messagetitle:
options.messageTitle
--------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.options.messageTitle
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
empty string
:aspect:`Good to know`
- :ref:`"FlashMessage finisher"<apireference-finisheroptions-flashmessagefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
The flash message title.
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.options.messagearguments:
options.messageArguments
------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.options.messageArguments
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
empty array
:aspect:`Good to know`
- :ref:`"FlashMessage finisher"<apireference-finisheroptions-flashmessagefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
The flash message arguments, if needed.
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.options.messagecode:
options.messageCode
-------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.options.messageCode
:aspect:`Data type`
int
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
null
:aspect:`Good to know`
- :ref:`"FlashMessage finisher"<apireference-finisheroptions-flashmessagefinisher>`
:aspect:`Description`
The flash message code, if needed.
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.options.severity:
options.severity
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.options.severity
:aspect:`Data type`
Enum<\TYPO3\CMS\Core\Type\ContextualFeedbackSeverity>|int
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
:php:`\TYPO3\CMS\Core\Type\ContextualFeedbackSeverity::OK` (0)
:aspect:`Good to know`
- :ref:`"FlashMessage finisher"<apireference-finisheroptions-flashmessagefinisher>`
:aspect:`Description`
The flash message severity code.
See :t3src:`core/Classes/Type/ContextualFeedbackSeverity.php` cases for the codes.
Important: in YAML-based form definitions, the PHP enums cannot be used.
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.options.translation.propertiesExcludedFromTranslation:
options.translation.propertiesExcludedFromTranslation
-----------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.options.translation.propertiesExcludedFromTranslation
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"FlashMessage finisher"<apireference-finisheroptions-flashmessagefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
Localization from translation files will be skipped for all specified finisher options.
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.options.translation.translationfiles:
options.translation.translationFiles
------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.options.translation.translationFiles
:aspect:`Data type`
string/ array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"FlashMessage finisher"<apireference-finisheroptions-flashmessagefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
If set, this translation file(s) will be used for finisher option translations.
If not set, the translation file(s) from the 'Form' element will be used.
Read :ref:`Translate finisher options<concepts-frontendrendering-translation-finishers>` for more informations.
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.formeditor.iconidentifier:
formeditor.iconIdentifier
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.formEditor.iconIdentifier
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
FlashMessage:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.FlashMessage.editor.header.label
predefinedDefaults:
options:
messageBody: ''
messageTitle: ''
messageArguments: ''
messageCode: 0
severity: 0
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/iconIdentifier.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.formeditor.label:
formeditor.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.formEditor.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4
FlashMessage:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.FlashMessage.editor.header.label
predefinedDefaults:
options:
messageBody: ''
messageTitle: ''
messageArguments: ''
messageCode: 0
severity: 0
:aspect:`Good to know`
- :ref:`"Translate form editor settings"<concepts-formeditor-translation-formeditor>`
:aspect:`Description`
.. include:: ../properties/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.flashmessage.formeditor.predefineddefaults:
formeditor.predefinedDefaults
-----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.FlashMessage.formEditor.predefinedDefaults
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
No
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 5-
FlashMessage:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.FlashMessage.editor.header.label
predefinedDefaults:
options:
messageBody: ''
messageTitle: ''
messageArguments: ''
messageCode: 0
severity: 0
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/predefinedDefaults.rst.txt
@@ -0,0 +1,450 @@
.. include:: /Includes.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect:
==========
[Redirect]
==========
.. _prototypes.prototypeIdentifier.finishersdefinitionredirect-properties:
Properties
==========
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.implementationclassname:
implementationClassName
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.implementationClassName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 2
Redirect:
implementationClassName: TYPO3\CMS\Form\Domain\Finishers\RedirectFinisher
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
.. include:: ../properties/implementationClassName.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.options.pageuid:
options.pageUid
---------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.options.pageUid
:aspect:`Data type`
int
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
1
:aspect:`Good to know`
- :ref:`"Redirect finisher"<apireference-finisheroptions-redirectfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Redirect to this page uid.
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.options.additionalparameters:
options.additionalParameters
----------------------------
:aspect:`Option path`
prototypes.prototypeIdentifier.finishersDefinition.Redirect.options.additionalParameters
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
empty string
:aspect:`Good to know`
- :ref:`"Redirect finisher"<apireference-finisheroptions-redirectfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Additional parameters which should be used on the target page.
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.options.fragment:
options.fragment
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.options.fragment
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
empty string
:aspect:`Good to know`
- :ref:`"Redirect finisher"<apireference-finisheroptions-redirectfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Add a fragment (e.g. :html:`#c9` or :html:`#foo`) to the redirect link.
The :html:`#` character can be omitted.
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.options.delay:
options.delay
-------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.options.delay
:aspect:`Data type`
int
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
0
:aspect:`Good to know`
- :ref:`"Redirect finisher"<apireference-finisheroptions-redirectfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
The redirect delay in seconds.
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.options.statuscode:
options.statusCode
------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.options.statusCode
:aspect:`Data type`
int
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
303
:aspect:`Good to know`
- :ref:`"Redirect finisher"<apireference-finisheroptions-redirectfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
The HTTP status code for the redirect. Default is "303 See Other".
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.options.translation.propertiesExcludedFromTranslation:
options.translation.propertiesExcludedFromTranslation
-----------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.options.translation.propertiesExcludedFromTranslation
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Redirect finisher"<apireference-finisheroptions-redirectfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
Localization from translation files will be skipped for all specified finisher options.
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.options.translation.translationfiles:
options.translation.translationFiles
------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.options.translation.translationFiles
:aspect:`Data type`
string/ array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"Redirect finisher"<apireference-finisheroptions-redirectfinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
If set, this translation file(s) will be used for finisher option translations.
If not set, the translation file(s) from the 'Form' element will be used.
Read :ref:`Translate finisher options<concepts-frontendrendering-translation-finishers>` for more informations.
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.formeditor.iconidentifier:
formeditor.iconIdentifier
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.formEditor.iconIdentifier
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
Redirect:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.Redirect.editor.header.label
predefinedDefaults:
options:
pageUid: ''
additionalParameters: ''
fragment: ''
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/iconIdentifier.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.formeditor.label:
formeditor.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.formEditor.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4
Redirect:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.Redirect.editor.header.label
predefinedDefaults:
options:
pageUid: ''
additionalParameters: ''
fragment: ''
:aspect:`Good to know`
- :ref:`"Translate form editor settings"<concepts-formeditor-translation-formeditor>`
:aspect:`Description`
.. include:: ../properties/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.formeditor.predefineddefaults:
formeditor.predefinedDefaults
-----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.formEditor.predefinedDefaults
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
No
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 5-
Redirect:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.Redirect.editor.header.label
predefinedDefaults:
options:
pageUid: ''
additionalParameters: ''
fragment: ''
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/predefinedDefaults.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.formengine.label:
FormEngine.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.FormEngine.label
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (plugin)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
Redirect:
FormEngine:
label: tt_content.finishersDefinition.Redirect.label
:aspect:`Good to know`
- :ref:`"Translate form plugin settings"<concepts-formplugin-translation-formengine>`
:aspect:`Description`
.. include:: ../properties/formEngine/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.redirect.formengine.elements:
FormEngine.elements
-------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.Redirect.FormEngine.elements
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (plugin)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4-
Redirect:
FormEngine:
label: tt_content.finishersDefinition.Redirect.label
elements:
pageUid:
label: tt_content.finishersDefinition.Redirect.pageUid.label
config:
type: group
allowed: pages
size: 1
minitems: 1
maxitems: 1
fieldWizard:
recordsOverview:
disabled: 1
additionalParameters:
label: tt_content.finishersDefinition.Redirect.additionalParameters.label
config:
type: input
fragment:
label: tt_content.finishersDefinition.Redirect.fragment.label
config:
type: input
:aspect:`Good to know`
- :ref:`"Translate form plugin settings"<concepts-formplugin-translation-formengine>`
:aspect:`Description`
.. include:: ../properties/formEngine/elements.rst.txt
@@ -0,0 +1,580 @@
.. include:: /Includes.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase:
================
[SaveToDatabase]
================
.. _prototypes.prototypeIdentifier.finishersdefinitionsavetodatabase-properties:
Properties
==========
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.implementationclassname:
implementationClassName
-----------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.implementationClassName
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 2
SaveToDatabase:
implementationClassName: TYPO3\CMS\Form\Domain\Finishers\SaveToDatabaseFinisher
:aspect:`Good to know`
- :ref:`"Custom finisher implementations"<concepts-finishers-customfinisherimplementations>`
:aspect:`Description`
.. include:: ../properties/implementationClassName.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.table:
options.table
-------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.table
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
null
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Insert or update values into this table.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.mode:
options.mode
------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.mode
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
'insert'
:aspect:`Possible values`
insert/ update
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
``insert`` will create a new database row with the values from the submitted form and/or some predefined values. @see options.elements and options.databaseFieldMappings
``update`` will update a given database row with the values from the submitted form and/or some predefined values. 'options.whereClause' is then required.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.whereclause:
options.whereClause
-------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.whereClause
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes, if mode = update
:aspect:`Default value`
empty array
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
This where clause will be used for a database update action.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.elements:
options.elements
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.elements
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
empty array
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Use ``options.elements`` to map form element values to existing database columns.
Each key within ``options.elements`` has to match with a form element identifier.
The value for each key within ``options.elements`` is an array with additional informations.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.elements.<formelementidentifier>.mapondatabasecolumn:
options.elements.<formElementIdentifier>.mapOnDatabaseColumn
------------------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.elements.<formElementIdentifier>.mapOnDatabaseColumn
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
The value from the submitted form element with the identifier ``<formElementIdentifier>`` will be written into this database column.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.elements.<formelementidentifier>.savefileidentifierinsteadofuid:
options.elements.<formElementIdentifier>.saveFileIdentifierInsteadOfUid
-------------------------------------------------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.elements.<formElementIdentifier>.saveFileIdentifierInsteadOfUid
:aspect:`Data type`
bool
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
false
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Set this to true if the database column should not be written if the value from the submitted form element with the identifier
``<formElementIdentifier>`` is empty (think about password fields etc.).
This setting only rules for form elements which creates a FAL object like ``FileUpload`` or ``ImageUpload``.
By default, the uid of the FAL object will be written into the database column. Set this to true if you want to store the
FAL identifier (1:/user_uploads/some_uploaded_pic.jpg) instead.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.elements.<formelementidentifier>.skipifvalueisempty:
options.elements.<formElementIdentifier>.skipIfValueIsEmpty
-------------------------------------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.elements.<formElementIdentifier>.skipIfValueIsEmpty
:aspect:`Data type`
bool
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
false
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Set this to true if the database column should not be written if the value from the submitted form element with the identifier
``<formElementIdentifier>`` is empty (think about password fields etc.). Empty means strings without content, whitespace
is valid content.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.elements.<formelementidentifier>.hashed:
options.elements.<formElementIdentifier>.hashed
-------------------------------------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.elements.<formElementIdentifier>.hashed
:aspect:`Data type`
bool
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
false
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Set this to true if the value from the submitted form element should be hashed before writing into the database.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.elements.<formelementidentifier>.dateformat:
options.elements.<formElementIdentifier>.dateFormat
---------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.elements.<formElementIdentifier>.dateFormat
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
'U'
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
If the internal Datatype is \DateTime which is true for the form element type "Date",
the object needs to be converted into a string value.
This option allows you to define the format of the date.
You can use every format accepted by PHP's date() function (https://php.net/manual/en/function.date.php#refsect1-function.date-parameters).
The default value is "U" which means a Unix timestamp.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.databasecolumnmappings:
options.databaseColumnMappings
------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.databaseColumnMappings
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
empty array
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Use this to map database columns to static values.
Each key within ``options.databaseColumnMappings`` has to match with an existing database column.
The value for each key within ``options.databaseColumnMappings`` is an array with additional informations.
This mapping is done *before* the ``options.element`` mapping.
This means if you map a database column to a value through ``options.databaseColumnMappings`` and map a submitted
form element value to the same database column through ``options.element``, the submitted form element value
will override the value you set within ``options.databaseColumnMappings``.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.databasecolumnmappings.<databasecolumnname>.value:
options.databaseColumnMappings.<databaseColumnName>.value
---------------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.databaseColumnMappings.<databaseColumnName>.value
:aspect:`Data type`
string
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
Yes
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
The value which will be written to the database column.
You can also use the :ref:`FormRuntime accessor feature<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>` to access every getable property from the ``FormRuntime``
In short: use something like ``{<formElementIdentifier>}`` to get the value from the submitted form element with the identifier ``<formElementIdentifier>``.
If you use the FormRuntime accessor feature within ``options.databaseColumnMappings`` the functionality is nearly equal
to the ``options.elements`` configuration variant.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.databasecolumnmappings.<databasecolumnname>.skipifvalueisempty:
options.databaseColumnMappings.<databaseColumnName>.skipIfValueIsEmpty
----------------------------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.databaseColumnMappings.<databaseColumnName>.skipIfValueIsEmpty
:aspect:`Data type`
bool
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
:aspect:`Description`
Set this to true if the database column should not be written if the value from `options.databaseColumnMappings.
<databaseColumnName>.value` is empty. Empty means strings without content, whitespace is valid content.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.translation.propertiesExcludedFromTranslation:
options.translation.propertiesExcludedFromTranslation
-----------------------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.translation.propertiesExcludedFromTranslation
:aspect:`Data type`
array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
Localization from translation files will be skipped for all specified finisher options.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.options.translation.translationfiles:
options.translation.translationFiles
------------------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.options.translation.translationFiles
:aspect:`Data type`
string/ array
:aspect:`Needed by`
Frontend
:aspect:`Mandatory`
No
:aspect:`Default value`
undefined
:aspect:`Good to know`
- :ref:`"SaveToDatabase finisher"<apireference-finisheroptions-savetodatabasefinisher>`
- :ref:`"Accessing form runtime values"<concepts-finishers-customfinisherimplementations-accessingoptions-formruntimeaccessor>`
- :ref:`"Translate finisher options"<concepts-frontendrendering-translation-finishers>`
:aspect:`Description`
If set, this translation file(s) will be used for finisher option translations.
If not set, the translation file(s) from the 'Form' element will be used.
Read :ref:`Translate finisher options<concepts-frontendrendering-translation-finishers>` for more informations.
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.formeditor.iconidentifier:
formeditor.iconIdentifier
-------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.formEditor.iconIdentifier
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 3
SaveToDatabase:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.SaveToDatabase.editor.header.label
predefinedDefaults:
options: { }
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/iconIdentifier.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.formeditor.label:
formeditor.label
----------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.formEditor.label
:aspect:`Data type`
string
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
Yes
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 4
SaveToDatabase:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.SaveToDatabase.editor.header.label
predefinedDefaults:
options: { }
:aspect:`Good to know`
- :ref:`"Translate form editor settings"<concepts-formeditor-translation-formeditor>`
:aspect:`Description`
.. include:: ../properties/label.rst.txt
.. _prototypes.prototypeIdentifier.finishersdefinition.savetodatabase.formeditor.predefineddefaults:
formeditor.predefinedDefaults
-----------------------------
:aspect:`Option path`
prototypes.<prototypeIdentifier>.finishersDefinition.SaveToDatabase.formEditor.predefinedDefaults
:aspect:`Data type`
array
:aspect:`Needed by`
Backend (form editor)
:aspect:`Mandatory`
No
:aspect:`Default value`
.. code-block:: yaml
:linenos:
:emphasize-lines: 5-
SaveToDatabase:
formEditor:
iconIdentifier: form-finisher
label: formEditor.elements.Form.finisher.SaveToDatabase.editor.header.label
predefinedDefaults:
options: { }
.. :aspect:`Good to know`
ToDo
:aspect:`Description`
.. include:: ../properties/predefinedDefaults.rst.txt
@@ -0,0 +1,6 @@
Every array key must match to the related finisher option name.
For example, the - :ref:`"[Redirect] finisher"<prototypes.prototypeIdentifier.finishersdefinition.redirect>` has the option - :ref:`"pageUid"<prototypes.prototypeIdentifier.finishersdefinition.redirect.options.pageuid>`.
If you want to make the ``pageUid`` overwritable within the ``form plugin``, then an array key ``pageUid`` has to exists within ``prototypes.prototypeIdentifier.finishersDefinition.finisheridentifier.FormEngine.elements``.
The configuration within ``prototypes.prototypeIdentifier.finishersDefinition.Redirect.FormEngine.elements.pageUid`` must follow the TCA syntax.
@@ -0,0 +1,5 @@
Finisher options are overwritable within the ``form plugin``.
If the "Override finisher settings" checkbox is selected within the ``form plugin``, every finisher who has a - :ref:`"FormEngine"<prototypes.prototypeIdentifier.finishersdefinition.finisheridentifier.formengine>` configuration, is shown in a separate tab.
``label`` is the label for such a tab.
@@ -0,0 +1,4 @@
An icon identifier which must be registered through the :php:`\TYPO3\CMS\Core\Imaging\IconRegistry`.
This icon will be shown within the - :ref:`"Inspector [CollectionElementHeaderEditor]"<prototypes.prototypeIdentifier.formelementsdefinition.formelementtypeidentifier.formeditor.editors.*.collectionelementheadereditor>` if the finisher is selected.
@@ -0,0 +1,3 @@
Classname which implements the finisher.
@@ -0,0 +1,3 @@
This label will be shown within the - :ref:`"Inspector [CollectionElementHeaderEditor]"<prototypes.prototypeIdentifier.formelementsdefinition.formelementtypeidentifier.formeditor.editors.*.collectionelementheadereditor>` if the finisher is selected.
@@ -0,0 +1,3 @@
Defines predefined defaults for finisher options which are prefilled, if the finisher is added to a form.