‪TYPO3CMS  ‪main
TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController Class Reference

Public Member Functions

 __construct (private readonly SysTemplateRepository $sysTemplateRepository, private readonly SysTemplateTreeBuilder $treeBuilder, private readonly LossyTokenizer $lossyTokenizer, private readonly IncludeTreeTraverser $treeTraverser,)
 
 loadCompletions (ServerRequestInterface $request)
 

Protected Member Functions

array getMergedTemplates (int $pageId, ServerRequestInterface $request)
 
 getLanguageService ()
 

Private Member Functions

 treeWalkCleanup (array $treeBranch)
 

Detailed Description

Code completion for code editor

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

Definition at line 41 of file CodeCompletionController.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController::__construct ( private readonly SysTemplateRepository  $sysTemplateRepository,
private readonly SysTemplateTreeBuilder  $treeBuilder,
private readonly LossyTokenizer  $lossyTokenizer,
private readonly IncludeTreeTraverser  $treeTraverser 
)

Definition at line 43 of file CodeCompletionController.php.

Member Function Documentation

◆ getLanguageService()

TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController::getLanguageService ( )
protected

◆ getMergedTemplates()

array TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController::getMergedTemplates ( int  $pageId,
ServerRequestInterface  $request 
)
protected

Gets merged templates by walking the rootline to a given page id. This is loaded once via ajax when a code editor in typoscript mode is fired. JS then knows the object types and can auto-complete on CTRL+space.

Returns
‪array Setup part of merged template records

Definition at line 76 of file CodeCompletionController.php.

References TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController\treeWalkCleanup().

Referenced by TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController\loadCompletions().

◆ loadCompletions()

TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController::loadCompletions ( ServerRequestInterface  $request)

Loads all templates up to a given page id (walking the rootline) and cleans parts that are not required for the code editor code-completion.

Definition at line 54 of file CodeCompletionController.php.

References $GLOBALS, TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController\getLanguageService(), and TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController\getMergedTemplates().

◆ treeWalkCleanup()

TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController::treeWalkCleanup ( array  $treeBranch)
private

Walks through a tree of TypoScript configuration and prepares it for JS.

Definition at line 92 of file CodeCompletionController.php.

Referenced by TYPO3\CMS\Backend\Controller\CodeEditor\CodeCompletionController\getMergedTemplates().