‪TYPO3CMS  10.4
TYPO3\CMS\Backend\Template\ModuleTemplate Class Reference

Public Member Functions

string getBodyTag ()
 
self setBodyTag ($bodyTag)
 
StandaloneView getView ()
 
self setContent ($content)
 
self setTitle ($title)
 
IconFactory getIconFactory ()
 
 __construct (PageRenderer $pageRenderer, IconFactory $iconFactory, FlashMessageService $flashMessageService)
 
self addJavaScriptCode ($name='', $code='')
 
DocHeaderComponent getDocHeaderComponent ()
 
string renderContent ()
 
PageRenderer getPageRenderer ()
 
self setForm ($formTag='')
 
self setModuleId ($moduleId)
 
self setModuleName ($moduleName)
 
self registerModuleMenu ($moduleMenuIdentifier)
 
string getDynamicTabMenu (array $menuItems, $domId, $defaultTabIndex=1, $collapsible=false, $wrapContent=true, $storeLastActiveTab=true)
 
string makeShortcutIcon ($gvList, $setList, $modName, $motherModName='', $displayName='', $classes='btn btn-default btn-sm')
 
string makeShortcutUrl ($gvList, $setList)
 
string redirectUrls ($thisLocation='')
 
string header ($text)
 
self addFlashMessage ($messageBody, $messageTitle='', $severity=AbstractMessage::OK, $storeInSession=true)
 
self setFlashMessageQueue ($flashMessageQueue)
 
bool isUiBlock ()
 
self setUiBlock (bool $uiBlock)
 

Protected Member Functions

 loadJavaScripts ()
 
 loadStylesheets ()
 
 getRegisteredStylesheetFolders ()
 
 setupPage ()
 
 setJavaScriptCodeArray ()
 
string getBackendFavicon ()
 
string getUriForFileName ($filename)
 
BackendUserAuthentication getBackendUserAuthentication ()
 
LanguageService getLanguageService ()
 
FlashMessageQueue getFlashMessageQueue ()
 

Protected Attributes

DocHeaderComponent $docHeaderComponent
 
array $javascriptCodeArray = array( )
 
PageRenderer $pageRenderer
 
bool $uiBlock = false
 
string[] $templateRootPaths = array( 'EXT:backend/Resources/Private/Templates' )
 
string[] $partialRootPaths = array( 'EXT:backend/Resources/Private/Partials' )
 
string[] $layoutRootPaths = array( 'EXT:backend/Resources/Private/Layouts' )
 
string $templateFile = 'Module.html'
 
StandaloneView $view
 
string $content = ''
 
IconFactory $iconFactory
 
FlashMessageService $flashMessageService
 
string $moduleId = ''
 
string $moduleName = ''
 
string $title = ''
 
string $bodyTag = '<body>'
 
FlashMessageQueue $flashMessageQueue
 

Detailed Description

A class taking care of the "outer" HTML of a module, especially the doc header and other related parts.

Definition at line 42 of file ModuleTemplate.php.

Constructor & Destructor Documentation

◆ __construct()

TYPO3\CMS\Backend\Template\ModuleTemplate::__construct ( PageRenderer  $pageRenderer,
IconFactory  $iconFactory,
FlashMessageService  $flashMessageService 
)

Class constructor Sets up view and property objects

Parameters
PageRenderer$pageRenderer
IconFactory$iconFactory
FlashMessageService$flashMessageService
Exceptions
InvalidTemplateResourceException‪In case a template is invalid

Definition at line 218 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$flashMessageService, TYPO3\CMS\Backend\Template\ModuleTemplate\$iconFactory, TYPO3\CMS\Backend\Template\ModuleTemplate\$pageRenderer, TYPO3\CMS\Backend\Template\ModuleTemplate\loadJavaScripts(), TYPO3\CMS\Backend\Template\ModuleTemplate\loadStylesheets(), and TYPO3\CMS\Backend\Template\ModuleTemplate\setupPage().

Member Function Documentation

◆ addFlashMessage()

self TYPO3\CMS\Backend\Template\ModuleTemplate::addFlashMessage (   $messageBody,
  $messageTitle = '',
  $severity = AbstractMessage::OK,
  $storeInSession = true 
)

Creates a Message object and adds it to the FlashMessageQueue.

Parameters
string$messageBody‪The message
string$messageTitle‪Optional message title
int$severity‪Optional severity, must be one of \TYPO3\CMS\Core\Messaging\FlashMessage constants
bool$storeInSession‪Optional, defines whether the message should be stored in the session (default)
Exceptions

Definition at line 693 of file ModuleTemplate.php.

References TYPO3\CMS\Core\Messaging\FlashMessageQueue\enqueue(), and TYPO3\CMS\Backend\Template\ModuleTemplate\getFlashMessageQueue().

◆ addJavaScriptCode()

self TYPO3\CMS\Backend\Template\ModuleTemplate::addJavaScriptCode (   $name = '',
  $code = '' 
)

Adds JS inline blocks of code to the internal registry

Parameters
string$name‪Javascript code block name
string$code‪Inline Javascript
Returns
‪self

Definition at line 329 of file ModuleTemplate.php.

◆ getBackendFavicon()

string TYPO3\CMS\Backend\Template\ModuleTemplate::getBackendFavicon ( )
protected

◆ getBackendUserAuthentication()

BackendUserAuthentication TYPO3\CMS\Backend\Template\ModuleTemplate::getBackendUserAuthentication ( )
protected

Returns the BE USER Object

Returns
‪BackendUserAuthentication

Definition at line 626 of file ModuleTemplate.php.

References $GLOBALS.

Referenced by TYPO3\CMS\Backend\Template\ModuleTemplate\loadJavaScripts().

◆ getBodyTag()

string TYPO3\CMS\Backend\Template\ModuleTemplate::getBodyTag ( )

Returns the current body tag

Returns
‪string

Definition at line 148 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$bodyTag.

◆ getDocHeaderComponent()

◆ getDynamicTabMenu()

string TYPO3\CMS\Backend\Template\ModuleTemplate::getDynamicTabMenu ( array  $menuItems,
  $domId,
  $defaultTabIndex = 1,
  $collapsible = false,
  $wrapContent = true,
  $storeLastActiveTab = true 
)

Creates a tab menu where the tabs or collapsible are rendered with bootstrap markup

Parameters
array$menuItems‪Tab elements, each element is an array with "label" and "content"
string$domId‪DOM id attribute, will be appended with an iteration number per tab.
int$defaultTabIndex‪Default tab to open (for toggle <=0). Value corresponds to integer-array index + 1 (index zero is "1", index "1" is 2 etc.). A value of zero (or something non-existing will result in no default tab open.
bool$collapsible‪If set, the tabs are rendered as headers instead over each sheet. Effectively this means there is no tab menu, but rather a foldout/fold-in menu.
bool$wrapContent‪If set, the content is wrapped in div structure which provides a padding and border style. Set this FALSE to get unstyled content pane with fullsize content area.
bool$storeLastActiveTab‪If set, the last open tab is stored in local storage and will be re-open again. If you don't need this feature, e.g. for wizards like import/export you can disable this behaviour.
Returns
‪string

Definition at line 460 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$view, TYPO3\CMS\Extbase\Mvc\View\ViewInterface\assignMultiple(), TYPO3\CMS\Core\Utility\ExtensionManagementUtility\extPath(), TYPO3\CMS\Extbase\Mvc\View\ViewInterface\render(), TYPO3\CMS\Fluid\View\AbstractTemplateView\setPartialRootPaths(), and TYPO3\CMS\Fluid\View\AbstractTemplateView\setTemplatePathAndFilename().

◆ getFlashMessageQueue()

FlashMessageQueue TYPO3\CMS\Backend\Template\ModuleTemplate::getFlashMessageQueue ( )
protected

◆ getIconFactory()

IconFactory TYPO3\CMS\Backend\Template\ModuleTemplate::getIconFactory ( )

Returns the IconFactory

Returns
‪IconFactory

Definition at line 204 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$iconFactory.

◆ getLanguageService()

LanguageService TYPO3\CMS\Backend\Template\ModuleTemplate::getLanguageService ( )
protected

Returns the LanguageService

Returns
‪LanguageService

Definition at line 636 of file ModuleTemplate.php.

References $GLOBALS.

Referenced by TYPO3\CMS\Backend\Template\ModuleTemplate\makeShortcutIcon(), and TYPO3\CMS\Backend\Template\ModuleTemplate\setupPage().

◆ getPageRenderer()

PageRenderer TYPO3\CMS\Backend\Template\ModuleTemplate::getPageRenderer ( )

Get PageRenderer

Returns
‪PageRenderer

Definition at line 378 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$pageRenderer.

Referenced by TYPO3\CMS\Beuser\Controller\PermissionController\initializeView().

◆ getRegisteredStylesheetFolders()

TYPO3\CMS\Backend\Template\ModuleTemplate::getRegisteredStylesheetFolders ( )
protected

Returns an array of all stylesheet directories registered via $TBE_STYLES['skins']

Definition at line 276 of file ModuleTemplate.php.

References $GLOBALS.

Referenced by TYPO3\CMS\Backend\Template\ModuleTemplate\loadStylesheets().

◆ getUriForFileName()

string TYPO3\CMS\Backend\Template\ModuleTemplate::getUriForFileName (   $filename)
protected

Returns the uri of a relative reference, resolves the "EXT:" prefix (way of referring to files inside extensions) and checks that the file is inside the project root of the TYPO3 installation

Parameters
string$filename‪The input filename/filepath to evaluate
Returns
‪string Returns the filename of $filename if valid, otherwise blank string.

Definition at line 603 of file ModuleTemplate.php.

References TYPO3\CMS\Core\Utility\PathUtility\getAbsoluteWebPath().

Referenced by TYPO3\CMS\Backend\Template\ModuleTemplate\getBackendFavicon().

◆ getView()

StandaloneView TYPO3\CMS\Backend\Template\ModuleTemplate::getView ( )

Gets the standalone view.

Returns
‪StandaloneView

Definition at line 170 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$view.

◆ header()

string TYPO3\CMS\Backend\Template\ModuleTemplate::header (   $text)

Returns the header-bar in the top of most backend modules Closes section if open.

Parameters
string$text‪The text string for the header
Returns
‪string HTML content

Definition at line 674 of file ModuleTemplate.php.

◆ isUiBlock()

bool TYPO3\CMS\Backend\Template\ModuleTemplate::isUiBlock ( )
Returns
‪bool

Definition at line 734 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$uiBlock.

◆ loadJavaScripts()

TYPO3\CMS\Backend\Template\ModuleTemplate::loadJavaScripts ( )
protected

◆ loadStylesheets()

TYPO3\CMS\Backend\Template\ModuleTemplate::loadStylesheets ( )
protected

◆ makeShortcutIcon()

string TYPO3\CMS\Backend\Template\ModuleTemplate::makeShortcutIcon (   $gvList,
  $setList,
  $modName,
  $motherModName = '',
  $displayName = '',
  $classes = 'btn btn-default btn-sm' 
)

Returns a linked shortcut-icon which will call the shortcut frame and set a shortcut there back to the calling page/module

Parameters
string$gvList‪Is the list of GET variables to store (if any)
string$setList‪Is the list of SET[] variables to store (if any) - SET[] variables a stored in $GLOBALS["SOBE"]->MOD_SETTINGS for backend modules
string$modNameModule name string
string | int$motherModName‪Is used to enter the "parent module name" if the module is a submodule under eg. Web>* or File>*. You can also set this value to 1 in which case the currentLoadedModule is sent to the shortcut script (so - not a fixed value!) - that is used in file_edit and wizard_rte modules where those are really running as a part of another module.
string$displayName‪When given this name is used instead of the module name.
string$classes‪Additional CSS classes for the link around the icon
Returns
‪string HTML content
Todo:
‪Make this thing return a button object

Definition at line 513 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$moduleName, TYPO3\CMS\Backend\Template\ModuleTemplate\getLanguageService(), TYPO3\CMS\Backend\Template\ModuleTemplate\makeShortcutUrl(), and TYPO3\CMS\Core\Imaging\Icon\SIZE_SMALL.

◆ makeShortcutUrl()

string TYPO3\CMS\Backend\Template\ModuleTemplate::makeShortcutUrl (   $gvList,
  $setList 
)

MAKE url for storing Internal func

Parameters
string$gvList‪Is the list of GET variables to store (if any)
string$setList‪Is the list of SET[] variables to store (if any)
  • ‪SET[] variables a stored in $GLOBALS["SOBE"]->MOD_SETTINGS for backend modules
Returns
‪string GET-parameters for the shortcut-url only(!). String starts with '&'

Definition at line 569 of file ModuleTemplate.php.

References $GLOBALS, and TYPO3\CMS\Core\Utility\HttpUtility\buildQueryString().

Referenced by TYPO3\CMS\Backend\Template\ModuleTemplate\makeShortcutIcon().

◆ redirectUrls()

string TYPO3\CMS\Backend\Template\ModuleTemplate::redirectUrls (   $thisLocation = '')

Returns JavaScript variables setting the returnUrl and thisScript location for use by JavaScript on the page. Used in fx. db_list.php (Web>List)

Parameters
string$thisLocation‪URL to "this location" / current script
Returns
‪string Urls are returned as JavaScript variables T3_RETURN_URL and T3_THIS_LOCATION

Definition at line 649 of file ModuleTemplate.php.

◆ registerModuleMenu()

◆ renderContent()

◆ setBodyTag()

self TYPO3\CMS\Backend\Template\ModuleTemplate::setBodyTag (   $bodyTag)

Sets the body tag

Parameters
string$bodyTag
Returns
‪self

Definition at line 159 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$bodyTag.

◆ setContent()

self TYPO3\CMS\Backend\Template\ModuleTemplate::setContent (   $content)

Set content

Parameters
string$content‪Content of the module
Returns
‪self

Definition at line 181 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$content.

◆ setFlashMessageQueue()

self TYPO3\CMS\Backend\Template\ModuleTemplate::setFlashMessageQueue (   $flashMessageQueue)
Parameters
FlashMessageQueue$flashMessageQueue
Returns
‪self

Definition at line 714 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$flashMessageQueue.

◆ setForm()

self TYPO3\CMS\Backend\Template\ModuleTemplate::setForm (   $formTag = '')

Set form tag

Parameters
string$formTagForm tag to add
Returns
‪self

Definition at line 389 of file ModuleTemplate.php.

◆ setJavaScriptCodeArray()

TYPO3\CMS\Backend\Template\ModuleTemplate::setJavaScriptCodeArray ( )
protected

Wrapper function for adding JS inline blocks

Definition at line 315 of file ModuleTemplate.php.

Referenced by TYPO3\CMS\Backend\Template\ModuleTemplate\renderContent().

◆ setModuleId()

self TYPO3\CMS\Backend\Template\ModuleTemplate::setModuleId (   $moduleId)

Sets the ModuleId

Parameters
string$moduleId‪ID of the module
Returns
‪self

Definition at line 401 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$moduleId, and TYPO3\CMS\Backend\Template\ModuleTemplate\registerModuleMenu().

◆ setModuleName()

self TYPO3\CMS\Backend\Template\ModuleTemplate::setModuleName (   $moduleName)

Sets the ModuleName

Parameters
string$moduleName‪Name of the module
Returns
‪self

Definition at line 414 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$moduleName.

◆ setTitle()

self TYPO3\CMS\Backend\Template\ModuleTemplate::setTitle (   $title)

Set title tag

Parameters
string$title
Returns
‪self

Definition at line 193 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$title.

◆ setUiBlock()

self TYPO3\CMS\Backend\Template\ModuleTemplate::setUiBlock ( bool  $uiBlock)
Parameters
bool$uiBlock
Returns
‪self

Definition at line 743 of file ModuleTemplate.php.

References TYPO3\CMS\Backend\Template\ModuleTemplate\$uiBlock.

◆ setupPage()

TYPO3\CMS\Backend\Template\ModuleTemplate::setupPage ( )
protected

Member Data Documentation

◆ $bodyTag

string TYPO3\CMS\Backend\Template\ModuleTemplate::$bodyTag = '<body>'
protected

◆ $content

string TYPO3\CMS\Backend\Template\ModuleTemplate::$content = ''
protected

Content String

Definition at line 101 of file ModuleTemplate.php.

Referenced by TYPO3\CMS\Backend\Template\ModuleTemplate\setContent().

◆ $docHeaderComponent

DocHeaderComponent TYPO3\CMS\Backend\Template\ModuleTemplate::$docHeaderComponent
protected

DocHeaderComponent

Definition at line 48 of file ModuleTemplate.php.

Referenced by TYPO3\CMS\Backend\Template\ModuleTemplate\getDocHeaderComponent().

◆ $flashMessageQueue

FlashMessageQueue TYPO3\CMS\Backend\Template\ModuleTemplate::$flashMessageQueue
protected

◆ $flashMessageService

FlashMessageService TYPO3\CMS\Backend\Template\ModuleTemplate::$flashMessageService
protected

◆ $iconFactory

IconFactory TYPO3\CMS\Backend\Template\ModuleTemplate::$iconFactory
protected

◆ $javascriptCodeArray

array TYPO3\CMS\Backend\Template\ModuleTemplate::$javascriptCodeArray = array( )
protected

Javascript Code Array Used for inline JS

Definition at line 55 of file ModuleTemplate.php.

◆ $layoutRootPaths

string [] TYPO3\CMS\Backend\Template\ModuleTemplate::$layoutRootPaths = array( 'EXT:backend/Resources/Private/Layouts' )
protected

LayoutRootPath

Definition at line 83 of file ModuleTemplate.php.

◆ $moduleId

string TYPO3\CMS\Backend\Template\ModuleTemplate::$moduleId = ''
protected

◆ $moduleName

string TYPO3\CMS\Backend\Template\ModuleTemplate::$moduleName = ''
protected

◆ $pageRenderer

PageRenderer TYPO3\CMS\Backend\Template\ModuleTemplate::$pageRenderer
protected

◆ $partialRootPaths

string [] TYPO3\CMS\Backend\Template\ModuleTemplate::$partialRootPaths = array( 'EXT:backend/Resources/Private/Partials' )
protected

PartialRootPath

Definition at line 77 of file ModuleTemplate.php.

◆ $templateFile

string TYPO3\CMS\Backend\Template\ModuleTemplate::$templateFile = 'Module.html'
protected

Template name

Definition at line 89 of file ModuleTemplate.php.

◆ $templateRootPaths

string [] TYPO3\CMS\Backend\Template\ModuleTemplate::$templateRootPaths = array( 'EXT:backend/Resources/Private/Templates' )
protected

TemplateRootPath

Definition at line 71 of file ModuleTemplate.php.

◆ $title

string TYPO3\CMS\Backend\Template\ModuleTemplate::$title = ''
protected

Title Tag

Definition at line 129 of file ModuleTemplate.php.

Referenced by TYPO3\CMS\Backend\Template\ModuleTemplate\setTitle().

◆ $uiBlock

bool TYPO3\CMS\Backend\Template\ModuleTemplate::$uiBlock = false
protected

◆ $view

StandaloneView TYPO3\CMS\Backend\Template\ModuleTemplate::$view
protected