‪TYPO3CMS  10.4
TYPO3\CMS\Backend\Form\Container\InlineControlContainer Class Reference
Inheritance diagram for TYPO3\CMS\Backend\Form\Container\InlineControlContainer:
TYPO3\CMS\Backend\Form\Container\AbstractContainer TYPO3\CMS\Backend\Form\AbstractNode TYPO3\CMS\Backend\Form\NodeInterface

Public Member Functions

 __construct (NodeFactory $nodeFactory, array $data)
 
array render ()
 

Protected Member Functions

string getLevelInteractionButton (string $type, array $conf=[])
 
string wrapWithButton (string $text, array $attributes=[])
 
string renderPossibleRecordsSelectorTypeGroupDB (array $inlineConfiguration)
 
string renderPossibleRecordsSelectorTypeSelect (array $config, array $uniqueIds)
 
array null extractFlexFormParts ($formElementName)
 
BackendUserAuthentication getBackendUserAuthentication ()
 
LanguageService getLanguageService ()
 
- ‪Protected Member Functions inherited from ‪TYPO3\CMS\Backend\Form\Container\AbstractContainer
array renderFieldInformation ()
 
array renderFieldControl ()
 
array renderFieldWizard ()
 
array explodeSingleFieldShowItemConfiguration ($field)
 
string renderTabMenu (array $menuItems, $domId, $defaultTabIndex=1)
 
- ‪Protected Member Functions inherited from ‪TYPO3\CMS\Backend\Form\AbstractNode
array initializeResultArray ()
 
array mergeChildReturnIntoExistingResult (array $existing, array $childReturn, bool $mergeHtml=true)
 
string getValidationDataAsJsonString (array $config)
 

Protected Attributes

array $inlineData = array( )
 
InlineStackProcessor $inlineStackProcessor
 
IconFactory $iconFactory
 
string[] $requireJsModules = array( )
 
array $defaultFieldInformation
 
array $defaultFieldWizard
 
- ‪Protected Attributes inherited from ‪TYPO3\CMS\Backend\Form\AbstractNode
NodeFactory $nodeFactory
 
array $data = array( )
 
array $defaultFieldInformation = array( )
 
array $defaultFieldControl = array( )
 
array $defaultFieldWizard = array( )
 

Detailed Description

Inline element entry container.

This container is the entry step to rendering an inline element. It is created by SingleFieldContainer.

The code creates the main structure for the single inline elements, initializes the inlineData array, that is manipulated and also returned back in its manipulated state. The "control" stuff of inline elements is rendered here, for example the "create new" button.

For each existing inline relation an InlineRecordContainer is called for further processing.

Definition at line 42 of file InlineControlContainer.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Backend\Form\Container\InlineControlContainer::__construct ( NodeFactory  $nodeFactory,
array  $data 
)

Container objects give $nodeFactory down to other containers.

Parameters
NodeFactory$nodeFactory
array$data

Reimplemented from TYPO3\CMS\Backend\Form\AbstractNode.

Definition at line 86 of file InlineControlContainer.php.

References TYPO3\CMS\Backend\Form\AbstractNode\$data, and TYPO3\CMS\Backend\Form\AbstractNode\$nodeFactory.

Member Function Documentation

◆ extractFlexFormParts()

array null TYPO3\CMS\Backend\Form\Container\InlineControlContainer::extractFlexFormParts (   $formElementName)
protected

Extracts FlexForm parts of a form element name like data[table][uid][field][sDEF][lDEF][FlexForm][vDEF] Helper method used in inline

Parameters
string$formElementName‪The form element name
Returns
‪array|null

Definition at line 644 of file InlineControlContainer.php.

References TYPO3\CMS\Core\Utility\GeneralUtility\trimExplode().

Referenced by TYPO3\CMS\Backend\Form\Container\InlineControlContainer\render().

◆ getBackendUserAuthentication()

BackendUserAuthentication TYPO3\CMS\Backend\Form\Container\InlineControlContainer::getBackendUserAuthentication ( )
protected
Returns
‪BackendUserAuthentication

Definition at line 660 of file InlineControlContainer.php.

References $GLOBALS.

Referenced by TYPO3\CMS\Backend\Form\Container\InlineControlContainer\renderPossibleRecordsSelectorTypeGroupDB().

◆ getLanguageService()

◆ getLevelInteractionButton()

string TYPO3\CMS\Backend\Form\Container\InlineControlContainer::getLevelInteractionButton ( string  $type,
array  $conf = [] 
)
protected

Creates the HTML code of a general button to be used on a level of inline children. The possible keys for the parameter $type are 'newRecord', 'localize' and 'synchronize'.

Parameters
string$type‪The button type, values are 'newRecord', 'localize' and 'synchronize'.
array$conf‪TCA configuration of the parent(!) field
Returns
‪string The HTML code of the new button, wrapped in a div

Definition at line 385 of file InlineControlContainer.php.

References $GLOBALS, TYPO3\CMS\Backend\Form\Container\InlineControlContainer\getLanguageService(), TYPO3\CMS\Core\Imaging\Icon\SIZE_SMALL, and TYPO3\CMS\Backend\Form\Container\InlineControlContainer\wrapWithButton().

Referenced by TYPO3\CMS\Backend\Form\Container\InlineControlContainer\render().

◆ render()

array TYPO3\CMS\Backend\Form\Container\InlineControlContainer::render ( )

Entry method

Returns
‪array As defined in initializeResultArray() of AbstractNode

Reimplemented from TYPO3\CMS\Backend\Form\AbstractNode.

Definition at line 97 of file InlineControlContainer.php.

References $GLOBALS, TYPO3\CMS\Backend\Form\Container\InlineControlContainer\$inlineData, TYPO3\CMS\Backend\Form\Container\InlineControlContainer\$inlineStackProcessor, TYPO3\CMS\Core\Utility\MathUtility\canBeInterpretedAsInteger(), TYPO3\CMS\Backend\Form\Container\InlineControlContainer\extractFlexFormParts(), TYPO3\CMS\Backend\Form\InlineStackProcessor\getCurrentStructureDomObjectIdPrefix(), TYPO3\CMS\Backend\Form\InlineStackProcessor\getCurrentStructureFormPrefix(), TYPO3\CMS\Backend\Form\Container\InlineControlContainer\getLanguageService(), TYPO3\CMS\Backend\Form\Container\InlineControlContainer\getLevelInteractionButton(), TYPO3\CMS\Backend\Form\InlineStackProcessor\getStructure(), TYPO3\CMS\Backend\Form\InlineStackProcessor\getStructureLevel(), TYPO3\CMS\Backend\Form\AbstractNode\getValidationDataAsJsonString(), TYPO3\CMS\Backend\Form\InlineStackProcessor\initializeByGivenStructure(), TYPO3\CMS\Backend\Form\AbstractNode\initializeResultArray(), TYPO3\CMS\Backend\Utility\BackendUtility\isTableLocalizable(), TYPO3\CMS\Backend\Form\AbstractNode\mergeChildReturnIntoExistingResult(), TYPO3\CMS\Backend\Form\InlineStackProcessor\pushStableStructureItem(), TYPO3\CMS\Backend\Form\Container\AbstractContainer\renderFieldInformation(), TYPO3\CMS\Backend\Form\Container\AbstractContainer\renderFieldWizard(), TYPO3\CMS\Backend\Form\Container\InlineControlContainer\renderPossibleRecordsSelectorTypeGroupDB(), and TYPO3\CMS\Backend\Form\Container\InlineControlContainer\renderPossibleRecordsSelectorTypeSelect().

◆ renderPossibleRecordsSelectorTypeGroupDB()

string TYPO3\CMS\Backend\Form\Container\InlineControlContainer::renderPossibleRecordsSelectorTypeGroupDB ( array  $inlineConfiguration)
protected

◆ renderPossibleRecordsSelectorTypeSelect()

string TYPO3\CMS\Backend\Form\Container\InlineControlContainer::renderPossibleRecordsSelectorTypeSelect ( array  $config,
array  $uniqueIds 
)
protected

Get a selector as used for the select type, to select from all available records and to create a relation to the embedding record (e.g. like MM).

Parameters
array$config‪TCA inline configuration of the parent(!) field
array$uniqueIds‪The uids that have already been used and should be unique
Returns
‪string A HTML <select> box with all possible records

Definition at line 591 of file InlineControlContainer.php.

References TYPO3\CMS\Core\Utility\MathUtility\forceIntegerInRange(), TYPO3\CMS\Backend\Form\Container\InlineControlContainer\getLanguageService(), and TYPO3\CMS\Core\Imaging\Icon\SIZE_SMALL.

Referenced by TYPO3\CMS\Backend\Form\Container\InlineControlContainer\render().

◆ wrapWithButton()

string TYPO3\CMS\Backend\Form\Container\InlineControlContainer::wrapWithButton ( string  $text,
array  $attributes = [] 
)
protected

Wraps a text with a button and returns the HTML representation.

Parameters
string$text‪The text to be wrapped by a button
array<string,string>‪$attributes Array of attributes to be used in the anchor
Returns
‪string The wrapped text as HTML representation

Definition at line 439 of file InlineControlContainer.php.

Referenced by TYPO3\CMS\Backend\Form\Container\InlineControlContainer\getLevelInteractionButton().

Member Data Documentation

◆ $defaultFieldInformation

array TYPO3\CMS\Backend\Form\Container\InlineControlContainer::$defaultFieldInformation
protected
Initial value:
= array(
'tcaDescription' => [
'renderType' => 'tcaDescription',
],
)

Default field information enabled for this element.

Definition at line 66 of file InlineControlContainer.php.

◆ $defaultFieldWizard

array TYPO3\CMS\Backend\Form\Container\InlineControlContainer::$defaultFieldWizard
protected
Initial value:
= array(
'localizationStateSelector' => [
'renderType' => 'localizationStateSelector',
],
)

Default wizards

Definition at line 74 of file InlineControlContainer.php.

◆ $iconFactory

IconFactory TYPO3\CMS\Backend\Form\Container\InlineControlContainer::$iconFactory
protected

Definition at line 56 of file InlineControlContainer.php.

◆ $inlineData

array TYPO3\CMS\Backend\Form\Container\InlineControlContainer::$inlineData = array( )
protected

Inline data array used in JS, returned as JSON object to frontend

Definition at line 48 of file InlineControlContainer.php.

Referenced by TYPO3\CMS\Backend\Form\Container\InlineControlContainer\render().

◆ $inlineStackProcessor

InlineStackProcessor TYPO3\CMS\Backend\Form\Container\InlineControlContainer::$inlineStackProcessor
protected

◆ $requireJsModules

string [] TYPO3\CMS\Backend\Form\Container\InlineControlContainer::$requireJsModules = array( )
protected

Definition at line 60 of file InlineControlContainer.php.