Bug #89730

Updated by DANIEL Rémy 3 months ago

Hello

*Context*

Following this guide: [https://docs.typo3.org/c/typo3/cms-form/8.7/en-us/Concepts/FrontendRendering/Index.html#concepts-frontendrendering-codecomponents-customfinisherimplementations-finishercontext-sharedatabetweenfinishers]

I am trying to get a variable from a previous finisher and to set it in the variables of a next finisher.
Here is the summary of the finishers in the form definition:

<pre>
finishers:
-
identifier: SaveToDatabase
options:
table: 'tx_myext_domain_model_offer'
mode: 'insert'
...
-
identifier: EmailFinisher
options:
...
variables:
recordUid: '{SaveToDatabase.insertedUids.0}'

</pre>

*Issue*

In the fluid template of the email, the value of the variable @{recordUid}@ is @SaveToDatabase.insertedUids.0@.

*Expected*

In the fluid template of the email, the value of the variable @{recordUid}@ should be the UID of the record created by the finisher SaveToDatabase.

*Solution* * Solution *

In \TYPO3\CMS\Form\Domain\Finishers\EmailFinisher::initializeStandaloneView(), @$this->parseOption@ should be used instead of directly accessing @$this->options@.

Reproduced on TYPO3 8 and 9.

Back