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

Public Member Functions

 __construct (private readonly IconFactory $iconFactory, private readonly InlineStackProcessor $inlineStackProcessor, private readonly EventDispatcherInterface $eventDispatcher,)
 
array render ()
 
- ‪Public Member Functions inherited from ‪TYPO3\CMS\Backend\Form\Container\AbstractContainer
 injectNodeFactory (NodeFactory $nodeFactory)
 
 injectBackendViewFactory (BackendViewFactory $backendViewFactory)
 
- ‪Public Member Functions inherited from ‪TYPO3\CMS\Backend\Form\AbstractNode
 setData (array $data)
 

Protected Member Functions

array renderChild (array $data)
 
array renderCombinationChild (array $data, $appendFormFieldNames)
 
string renderForeignRecordHeader (array $data, string $ariaAttributesString)
 
string renderForeignRecordHeaderControl (array $data)
 
 getLanguageService ()
 
- ‪Protected Member Functions inherited from ‪TYPO3\CMS\Backend\Form\Container\AbstractContainer
array renderFieldInformation ()
 
array renderFieldControl ()
 
array renderFieldWizard ()
 
 explodeSingleFieldShowItemConfiguration (string $field)
 
 renderTabMenu (array $menuItems, string $domId)
 
 wrapWithFieldsetAndLegend (string $fieldContent)
 
 getBackendUserAuthentication ()
 
- ‪Protected Member Functions inherited from ‪TYPO3\CMS\Backend\Form\AbstractNode
 initializeResultArray ()
 
array mergeChildReturnIntoExistingResult (array $existing, array $childReturn, bool $mergeHtml=true)
 
 getValidationDataAsJsonString (array $config)
 

Protected Attributes

array $inlineData = array( )
 
- ‪Protected Attributes inherited from ‪TYPO3\CMS\Backend\Form\Container\AbstractContainer
NodeFactory $nodeFactory
 
BackendViewFactory $backendViewFactory
 
- ‪Protected Attributes inherited from ‪TYPO3\CMS\Backend\Form\AbstractNode
array $data = []
 
array $defaultFieldInformation = array( )
 
array $defaultFieldControl = array( )
 
array $defaultFieldWizard = array( )
 

Detailed Description

Render a single inline record relation.

This container is called by InlineControlContainer to render single existing records. Furthermore, it is called by FormEngine for an incoming ajax request to expand an existing record or to create a new one.

This container creates the outer HTML of single inline records - eg. drag and drop and delete buttons. For rendering of the record itself processing is handed over to FullRecordContainer.

Definition at line 40 of file InlineRecordContainer.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Backend\Form\Container\InlineRecordContainer::__construct ( private readonly IconFactory  $iconFactory,
private readonly InlineStackProcessor  $inlineStackProcessor,
private readonly EventDispatcherInterface  $eventDispatcher 
)

Definition at line 48 of file InlineRecordContainer.php.

Member Function Documentation

◆ getLanguageService()

◆ render()

◆ renderChild()

array TYPO3\CMS\Backend\Form\Container\InlineRecordContainer::renderChild ( array  $data)
protected

◆ renderCombinationChild()

array TYPO3\CMS\Backend\Form\Container\InlineRecordContainer::renderCombinationChild ( array  $data,
  $appendFormFieldNames 
)
protected

Render child child

Render a table with FormEngine, that occurs on an intermediate table but should be editable directly, so two tables are combined (the intermediate table with attributes and the sub-embedded table). -> This is a direct embedding over two levels!

Parameters
array$data
string$appendFormFieldNames‪The [
‪[<uid>] of the parent record (the intermediate table)
Returns
‪array Result array

Definition at line 231 of file InlineRecordContainer.php.

References TYPO3\CMS\Backend\Form\AbstractNode\$data, TYPO3\CMS\Backend\Form\Container\InlineRecordContainer\getLanguageService(), TYPO3\CMS\Backend\Form\AbstractNode\initializeResultArray(), TYPO3\CMS\Backend\Form\AbstractNode\mergeChildReturnIntoExistingResult(), and TYPO3\CMS\Backend\Form\Container\InlineRecordContainer\renderChild().

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

◆ renderForeignRecordHeader()

string TYPO3\CMS\Backend\Form\Container\InlineRecordContainer::renderForeignRecordHeader ( array  $data,
string  $ariaAttributesString 
)
protected

Renders the HTML header for a foreign record, such as the title, toggle-function, drag'n'drop, etc. Later on the command-icons are inserted here.

Parameters
array$data‪Current data
string$ariaAttributesString‪HTML aria attributes for the collapse button
Returns
‪string The HTML code of the header

Definition at line 295 of file InlineRecordContainer.php.

References TYPO3\CMS\Backend\Form\AbstractNode\$data, TYPO3\CMS\Webhooks\Message\$record, TYPO3\CMS\Backend\Form\Container\AbstractContainer\getBackendUserAuthentication(), TYPO3\CMS\Backend\Form\Container\InlineRecordContainer\getLanguageService(), and TYPO3\CMS\Backend\Form\Container\InlineRecordContainer\renderForeignRecordHeaderControl().

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

◆ renderForeignRecordHeaderControl()

string TYPO3\CMS\Backend\Form\Container\InlineRecordContainer::renderForeignRecordHeaderControl ( array  $data)
protected

Render the control-icons for a record header (create new, sorting, delete, disable/enable). Most of the parts are copy&paste from TYPO3\CMS\Backend\RecordList\DatabaseRecordList and modified for the JavaScript calls here

Parameters
array$data‪Current data
Returns
‪string The HTML code with the control-icons

Definition at line 340 of file InlineRecordContainer.php.

References TYPO3\CMS\Backend\Form\AbstractNode\$data, $GLOBALS, TYPO3\CMS\Core\Utility\MathUtility\canBeInterpretedAsInteger(), TYPO3\CMS\Backend\Form\Container\AbstractContainer\getBackendUserAuthentication(), TYPO3\CMS\Backend\Form\Container\InlineRecordContainer\getLanguageService(), TYPO3\CMS\Core\Type\Bitmask\Permission\NOTHING, TYPO3\CMS\Core\Type\Bitmask\Permission\PAGE_SHOW, and TYPO3\CMS\Backend\Form\Container\InlineRecordContainer\render().

Referenced by TYPO3\CMS\Backend\Form\Container\InlineRecordContainer\renderForeignRecordHeader().

Member Data Documentation

◆ $inlineData

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