TYPO3  7.6
Public Member Functions | Protected Member Functions | List of all members
TcaFlexProcess Class Reference
Inheritance diagram for TcaFlexProcess:
FormDataProviderInterface

Public Member Functions

 addData (array $result)
 

Protected Member Functions

 getFlexIdentifier (array $result, $fieldName)
 
 getPageTsOfFlex (array $result, $fieldName, $flexIdentifier)
 
 modifyOuterDataStructure (array $result, $fieldName, $pageTsConfig)
 
 removeExcludeFieldsFromDataStructure (array $result, $fieldName, $flexIdentifier)
 
 removeDisabledFieldsFromDataStructure (array $result, $fieldName, $pageTsConfig)
 
 modifySingleSheetInformation (array $dataStructure, array $pageTsOfSheet)
 
 getBackendUser ()
 

Detailed Description

Process data structures and data values, calculate defaults.

This is typically the last provider, executed after TcaFlexPrepare

Definition at line 28 of file TcaFlexProcess.php.

Member Function Documentation

addData ( array  $result)

Determine possible pageTsConfig overrides and apply them to ds. Determine available languages and sanitize dv for further processing. Then kick and validate further details like excluded fields. Finally for each possible value and ds call FormDataCompiler with set FlexFormSegment group to resolve single field stuff like item processor functions.

Parameters
array$result
Returns
array

Implements FormDataProviderInterface.

Definition at line 40 of file TcaFlexProcess.php.

References TcaFlexProcess\getFlexIdentifier(), TcaFlexProcess\getPageTsOfFlex(), TcaFlexProcess\modifyOuterDataStructure(), TcaFlexProcess\removeDisabledFieldsFromDataStructure(), and TcaFlexProcess\removeExcludeFieldsFromDataStructure().

getBackendUser ( )
protected
Returns
BackendUserAuthentication

Definition at line 533 of file TcaFlexProcess.php.

References $GLOBALS.

Referenced by TcaFlexProcess\removeExcludeFieldsFromDataStructure().

getFlexIdentifier ( array  $result,
  $fieldName 
)
protected

Take care of ds_pointerField and friends to determine the correct sub array within TCA config ds.

Gets extension identifier. Use second pointer field if it's value is not empty, "list" or "*", else it must be a plugin and first one will be used. This code basically determines the sub key of ds field: config = array( ds => array( 'aFlexConfig' => '<flexXml ... ^^^^^^^^^^^ $flexformIdentifier contains "aFlexConfig" after this operation.

Todo:

: This method is only implemented half. It basically should do all the

: pointer handling that is done within BackendUtility::getFlexFormDS() to $srcPointer.

Parameters
array$resultResult array
string$fieldNameCurrent handle field name
Returns
string Pointer

Definition at line 78 of file TcaFlexProcess.php.

References GeneralUtility\trimExplode().

Referenced by TcaFlexProcess\addData().

getPageTsOfFlex ( array  $result,
  $fieldName,
  $flexIdentifier 
)
protected

Determine TCEFORM.aTable.aField.matchingIdentifier

Parameters
array$resultResult array
string$fieldNameHandled field name
string$flexIdentifierDetermined identifier
Returns
array PageTsConfig for this flex

Definition at line 108 of file TcaFlexProcess.php.

Referenced by TcaFlexProcess\addData().

modifyOuterDataStructure ( array  $result,
  $fieldName,
  $pageTsConfig 
)
protected

Handle "outer" flex data structure changes like language and sheet description. Does not change "TCA" or values of single elements

Parameters
array$resultResult array
string$fieldNameCurrent handle field name
array$pageTsConfigGiven pageTsConfig of this flex form
Returns
array Modified item array

Definition at line 128 of file TcaFlexProcess.php.

References TcaFlexProcess\modifySingleSheetInformation().

Referenced by TcaFlexProcess\addData().

modifySingleSheetInformation ( array  $dataStructure,
array  $pageTsOfSheet 
)
protected

Modify data structure of a single "sheet" Sets "secondary" data like sheet names and so on, but does NOT modify single elements

Parameters
array$dataStructureGiven data structure
array$pageTsOfSheetPage Ts config of given field
Returns
array Modified data structure

Definition at line 507 of file TcaFlexProcess.php.

Referenced by TcaFlexProcess\modifyOuterDataStructure().

removeDisabledFieldsFromDataStructure ( array  $result,
  $fieldName,
  $pageTsConfig 
)
protected

Remove fields from data structure that are disabled in pageTsConfig.

Parameters
array$resultResult array
string$fieldNameCurrent handle field name
array$pageTsConfigGiven pageTsConfig of this flex form
Returns
array Modified item array

Definition at line 204 of file TcaFlexProcess.php.

Referenced by TcaFlexProcess\addData().

removeExcludeFieldsFromDataStructure ( array  $result,
  $fieldName,
  $flexIdentifier 
)
protected

Removes fields from data structure the user has no access to

Parameters
array$resultResult array
string$fieldNameCurrent handle field name
string$flexIdentifierDetermined identifier
Returns
array Modified result

Definition at line 163 of file TcaFlexProcess.php.

References TcaFlexProcess\getBackendUser(), and GeneralUtility\trimExplode().

Referenced by TcaFlexProcess\addData().