Project

General

Profile

Bug #89730

Updated by Rémy DANIEL over 4 years 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