PHP Class FluidTYPO3\Flux\Backend\DynamicFlexForm

Show file Open project: fluidtypo3/flux Class Usage Examples

Protected Properties

Property Type Description
$cache TYPO3\CMS\Core\Cache\Frontend\VariableFrontend
$configurationService FluidTYPO3\Flux\Service\FluxService
$objectManager TYPO3\CMS\Extbase\Object\ObjectManagerInterface
$recordService FluidTYPO3\Flux\Service\WorkspacesAwareRecordService

Public Methods

Method Description
__construct ( ) CONSTRUCTOR
getFlexFormDS_postProcessDS ( array &$dataStructArray, array $conf, array &$row, string $table, string $fieldName ) : void Hook for generating dynamic FlexForm source code.
injectConfigurationService ( FluxService $service ) : void
injectObjectManager ( TYPO3\CMS\Extbase\Object\ObjectManagerInterface $objectManager ) : void
injectRecordService ( FluidTYPO3\Flux\Service\WorkspacesAwareRecordService $recordService ) : void

Protected Methods

Method Description
patchTceformsWrapper ( array $dataStructure, $parentIndex = NULL ) : array Temporary method during FormEngine transition!
recursivelyEvaluateClosures ( array $dataStructureArray, array $parameters ) : array Method used to ensure that all Closures in the data structure are evaluated. The returned array is then serialisation-safe. Closures can occur whenever Flux fields of certain types are used, for example the "custom" field type (which generates a Closure that evaluates the tag content in a deferred manner).

Method Details

__construct() public method

CONSTRUCTOR
public __construct ( )

getFlexFormDS_postProcessDS() public method

NOTE: patches data structure resolving in a way that solves a regression in the TYPO3 core when dealing with IRRE AJAX requests (in which the database record is no longer fetched by the controller). This patches not only data structure resolving for Flux data structures but indeed any data structure built using hooks or involving user functions which require the entire record (but when using hooks, supports only extensions which are loaded AFTER or depend on Flux).
public getFlexFormDS_postProcessDS ( array &$dataStructArray, array $conf, array &$row, string $table, string $fieldName ) : void
$dataStructArray array
$conf array
$row array
$table string
$fieldName string
return void

injectConfigurationService() public method

public injectConfigurationService ( FluxService $service ) : void
$service FluidTYPO3\Flux\Service\FluxService
return void

injectObjectManager() public method

public injectObjectManager ( TYPO3\CMS\Extbase\Object\ObjectManagerInterface $objectManager ) : void
$objectManager TYPO3\CMS\Extbase\Object\ObjectManagerInterface
return void

injectRecordService() public method

public injectRecordService ( FluidTYPO3\Flux\Service\WorkspacesAwareRecordService $recordService ) : void
$recordService FluidTYPO3\Flux\Service\WorkspacesAwareRecordService
return void

patchTceformsWrapper() protected method

Performs a duplication in data source, applying a wrapper around field configurations which require it for correct rendering in flex form containers.
protected patchTceformsWrapper ( array $dataStructure, $parentIndex = NULL ) : array
$dataStructure array
return array

recursivelyEvaluateClosures() protected method

Method used to ensure that all Closures in the data structure are evaluated. The returned array is then serialisation-safe. Closures can occur whenever Flux fields of certain types are used, for example the "custom" field type (which generates a Closure that evaluates the tag content in a deferred manner).
protected recursivelyEvaluateClosures ( array $dataStructureArray, array $parameters ) : array
$dataStructureArray array
$parameters array
return array

Property Details

$cache protected property

protected VariableFrontend,TYPO3\CMS\Core\Cache\Frontend $cache
return TYPO3\CMS\Core\Cache\Frontend\VariableFrontend

$configurationService protected property

protected FluxService,FluidTYPO3\Flux\Service $configurationService
return FluidTYPO3\Flux\Service\FluxService

$objectManager protected property

protected ObjectManagerInterface,TYPO3\CMS\Extbase\Object $objectManager
return TYPO3\CMS\Extbase\Object\ObjectManagerInterface

$recordService protected property

protected WorkspacesAwareRecordService,FluidTYPO3\Flux\Service $recordService
return FluidTYPO3\Flux\Service\WorkspacesAwareRecordService