TYPO3 CMS  TYPO3_7-6
TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare Class Reference
Inheritance diagram for TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare:
TYPO3\CMS\Backend\Form\FormDataProviderInterface

Public Member Functions

 addData (array $result)
 

Protected Member Functions

 createDefaultSheetInDataStructureIfNotGiven (array $result, $fieldName)
 
 removeTceFormsArrayKeyFromDataStructureElements (array $result, $fieldName)
 
 removeElementTceFormsRecursive (array $structure)
 
 migrateFlexformTcaDataStructureElements (array $result, $fieldName)
 
 migrateFlexformTcaRecursive ($structure, $table, $fieldName)
 

Detailed Description

Prepare flex data structure and data values.

This data provider is typically executed directly after TcaFlexFetch

Definition at line 26 of file TcaFlexPrepare.php.

Member Function Documentation

◆ addData()

TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::addData ( array  $result)

Resolve flex data structures and prepare flex data values.

Normalize some details to have aligned array nesting for the rest of the processing method and the render engine.

Parameters
array$result
Returns
array

Implements TYPO3\CMS\Backend\Form\FormDataProviderInterface.

Definition at line 37 of file TcaFlexPrepare.php.

References TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\createDefaultSheetInDataStructureIfNotGiven(), TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\migrateFlexformTcaDataStructureElements(), and TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\removeTceFormsArrayKeyFromDataStructureElements().

◆ createDefaultSheetInDataStructureIfNotGiven()

TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::createDefaultSheetInDataStructureIfNotGiven ( array  $result,
  $fieldName 
)
protected

Add a sheet structure if data structure has none yet to simplify further handling.

Example TCA field config: ['config']['ds']['ROOT'] becomes ['config']['ds']['sheets']['sDEF']['ROOT']

Parameters
array$resultResult array
string$fieldNameCurrently handled field name
Returns
array Modified result
Exceptions

Definition at line 63 of file TcaFlexPrepare.php.

Referenced by TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\addData().

◆ migrateFlexformTcaDataStructureElements()

TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::migrateFlexformTcaDataStructureElements ( array  $result,
  $fieldName 
)
protected

On-the-fly migration for flex form "TCA"

Parameters
array$resultResult array
string$fieldNameCurrently handled field name
Returns
array Modified result

Definition at line 139 of file TcaFlexPrepare.php.

References TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\migrateFlexformTcaRecursive().

Referenced by TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\addData().

◆ migrateFlexformTcaRecursive()

TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::migrateFlexformTcaRecursive (   $structure,
  $table,
  $fieldName 
)
protected

Recursively migrate flex form TCA

Parameters
array$structureGiven hierarchy
string$table
string$fieldName
Returns
array Modified hierarchy

Definition at line 155 of file TcaFlexPrepare.php.

References TYPO3\CMS\Core\Utility\GeneralUtility\deprecationLog(), and TYPO3\CMS\Core\Utility\GeneralUtility\makeInstance().

Referenced by TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\migrateFlexformTcaDataStructureElements().

◆ removeElementTceFormsRecursive()

TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::removeElementTceFormsRecursive ( array  $structure)
protected

Moves ['el']['something']['TCEforms'] to ['el']['something'] and ['ROOT']['TCEforms'] to ['ROOT'] recursive

Parameters
array$structureGiven hierarchy
Returns
array Modified hierarchy

Definition at line 105 of file TcaFlexPrepare.php.

Referenced by TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\removeTceFormsArrayKeyFromDataStructureElements().

◆ removeTceFormsArrayKeyFromDataStructureElements()

TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare::removeTceFormsArrayKeyFromDataStructureElements ( array  $result,
  $fieldName 
)
protected

Remove "TCEforms" key from all elements in data structure to simplify further parsing.

Example config: ['config']['ds']['sheets']['sDEF']['ROOT']['el']['anElement']['TCEforms']['label'] becomes ['config']['ds']['sheets']['sDEF']['ROOT']['el']['anElement']['label']

Parameters
array$resultResult array
string$fieldNameCurrently handled field name
Returns
array Modified result

Definition at line 91 of file TcaFlexPrepare.php.

References TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\removeElementTceFormsRecursive().

Referenced by TYPO3\CMS\Backend\Form\FormDataProvider\TcaFlexPrepare\addData().