‪TYPO3CMS  ‪main
TYPO3\CMS\Backend\View\BackendLayoutView Class Reference
Inheritance diagram for TYPO3\CMS\Backend\View\BackendLayoutView:
TYPO3\CMS\Core\SingletonInterface

Public Member Functions

 __construct (private readonly DataProviderCollection $dataProviderCollection, private readonly TypoScriptStringFactory $typoScriptStringFactory, private readonly PageLayoutResolver $pageLayoutResolver,)
 
 addBackendLayoutItems (array &$parameters)
 
false string getSelectedCombinedIdentifier (int $pageId)
 
 colPosListItemProcFunc (array &$parameters)
 
 getSelectedBackendLayout (int $pageId)
 
 getBackendLayoutForPage (int $pageId)
 
 parseStructure (BackendLayout $backendLayout)
 

Static Public Member Functions

static getDefaultColumnLayout ()
 

Protected Member Functions

int false determinePageId (string $tableName, array $data)
 
 getIdentifiersToBeExcluded (array $pageTSconfig)
 
 addColPosListLayoutItems (int $pageId, array $items)
 

Protected Attributes

array $selectedCombinedIdentifier = []
 
array $selectedBackendLayout = []
 

Detailed Description

Backend layout for CMS

This class is a TYPO3 Backend implementation and is not considered part of the Public TYPO3 API.

Definition at line 36 of file BackendLayoutView.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Backend\View\BackendLayoutView::__construct ( private readonly DataProviderCollection  $dataProviderCollection,
private readonly TypoScriptStringFactory  $typoScriptStringFactory,
private readonly PageLayoutResolver  $pageLayoutResolver 
)

Create this object and initialize data providers.

Definition at line 44 of file BackendLayoutView.php.

References $GLOBALS, and TYPO3\CMS\Webhooks\Message\$identifier.

Member Function Documentation

◆ addBackendLayoutItems()

TYPO3\CMS\Backend\View\BackendLayoutView::addBackendLayoutItems ( array &  $parameters)

Gets backend layout items to be shown in the forms engine. This method is called as "itemsProcFunc" with the accordant context for pages.backend_layout and pages.backend_layout_next_level. Also used in the info module, since we need those items with the appropriate labels and backend layout identifiers there, too.

Todo:
‪This method should return the items array instead of using the whole parameters array as reference. This has to be adjusted, as soon as the itemsProcFunc functionality is changed in this regard.

Definition at line 67 of file BackendLayoutView.php.

References TYPO3\CMS\Backend\View\BackendLayoutView\determinePageId(), and TYPO3\CMS\Backend\View\BackendLayoutView\getIdentifiersToBeExcluded().

◆ addColPosListLayoutItems()

TYPO3\CMS\Backend\View\BackendLayoutView::addColPosListLayoutItems ( int  $pageId,
array  $items 
)
protected

◆ colPosListItemProcFunc()

TYPO3\CMS\Backend\View\BackendLayoutView::colPosListItemProcFunc ( array &  $parameters)

Gets colPos items to be shown in the forms engine. This method is called as "itemsProcFunc" with the accordant context for tt_content.colPos.

Definition at line 196 of file BackendLayoutView.php.

References TYPO3\CMS\Backend\View\BackendLayoutView\addColPosListLayoutItems(), and TYPO3\CMS\Backend\View\BackendLayoutView\determinePageId().

◆ determinePageId()

int false TYPO3\CMS\Backend\View\BackendLayoutView::determinePageId ( string  $tableName,
array  $data 
)
protected

Determines the page id for a given record of a database table.

Returns
‪int|false Returns page id or false on error

Definition at line 109 of file BackendLayoutView.php.

References TYPO3\CMS\Core\Database\Connection\PARAM_INT.

Referenced by TYPO3\CMS\Backend\View\BackendLayoutView\addBackendLayoutItems(), and TYPO3\CMS\Backend\View\BackendLayoutView\colPosListItemProcFunc().

◆ getBackendLayoutForPage()

TYPO3\CMS\Backend\View\BackendLayoutView::getBackendLayoutForPage ( int  $pageId)

◆ getDefaultColumnLayout()

static TYPO3\CMS\Backend\View\BackendLayoutView::getDefaultColumnLayout ( )
static

Get default columns layout (main column)

Definition at line 293 of file BackendLayoutView.php.

Referenced by TYPO3\CMS\Backend\View\BackendLayout\DefaultDataProvider\createDefaultBackendLayout().

◆ getIdentifiersToBeExcluded()

TYPO3\CMS\Backend\View\BackendLayoutView::getIdentifiersToBeExcluded ( array  $pageTSconfig)
protected

Gets backend layout identifiers to be excluded

Definition at line 179 of file BackendLayoutView.php.

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

Referenced by TYPO3\CMS\Backend\View\BackendLayoutView\addBackendLayoutItems().

◆ getSelectedBackendLayout()

TYPO3\CMS\Backend\View\BackendLayoutView::getSelectedBackendLayout ( int  $pageId)

Gets the selected backend layout structure as an array

Definition at line 220 of file BackendLayoutView.php.

References TYPO3\CMS\Backend\View\BackendLayoutView\getBackendLayoutForPage().

Referenced by TYPO3\CMS\Backend\View\BackendLayoutView\addColPosListLayoutItems().

◆ getSelectedCombinedIdentifier()

false string TYPO3\CMS\Backend\View\BackendLayoutView::getSelectedCombinedIdentifier ( int  $pageId)

Returns the backend layout which should be used for this page.

Returns
‪false|string Identifier of the backend layout to be used, or FALSE if none

only public for testing purposes

Definition at line 153 of file BackendLayoutView.php.

Referenced by TYPO3\CMS\Backend\View\BackendLayoutView\getBackendLayoutForPage().

◆ parseStructure()

TYPO3\CMS\Backend\View\BackendLayoutView::parseStructure ( BackendLayout  $backendLayout)

Member Data Documentation

◆ $selectedBackendLayout

array TYPO3\CMS\Backend\View\BackendLayoutView::$selectedBackendLayout = []
protected

Definition at line 39 of file BackendLayoutView.php.

◆ $selectedCombinedIdentifier

array TYPO3\CMS\Backend\View\BackendLayoutView::$selectedCombinedIdentifier = []
protected