‪TYPO3CMS  9.5
ModuleTemplate.php
Go to the documentation of this file.
1 <?php
3 
4 /*
5  * This file is part of the TYPO3 CMS project.
6  *
7  * It is free software; you can redistribute it and/or modify it under
8  * the terms of the GNU General Public License, either version 2
9  * of the License, or any later version.
10  *
11  * For the full copyright and license information, please read the
12  * LICENSE.txt file that was distributed with this source code.
13  *
14  * The TYPO3 project - inspiring people to share!
15  */
16 
32 
40 {
47 
54 
61 
67  const ‪STATUS_ICON_OK = -1;
68 
74  protected ‪$docHeaderComponent;
75 
82  protected ‪$javascriptCodeArray = [];
83 
89  protected ‪$pageRenderer;
90 
94  protected ‪$uiBlock = false;
95 
101  protected ‪$templateRootPaths = ['EXT:backend/Resources/Private/Templates'];
102 
108  protected ‪$partialRootPaths = ['EXT:backend/Resources/Private/Partials'];
109 
115  protected ‪$layoutRootPaths = ['EXT:backend/Resources/Private/Layouts'];
116 
122  protected ‪$templateFile = 'Module.html';
123 
129  protected ‪$view;
130 
136  protected ‪$content = '';
137 
143  protected ‪$iconFactory;
144 
150  protected ‪$moduleId = '';
151 
157  protected ‪$moduleName = '';
158 
164  protected ‪$title = '';
165 
171  protected ‪$bodyTag = '<body>';
172 
178  protected ‪$flashMessageQueue;
179 
185  public function ‪getBodyTag()
186  {
187  return ‪$this->bodyTag;
188  }
189 
196  public function ‪setBodyTag(‪$bodyTag): self
197  {
198  $this->bodyTag = ‪$bodyTag;
199  return $this;
200  }
201 
207  public function ‪getView()
208  {
209  return ‪$this->view;
210  }
211 
218  public function ‪setContent(‪$content): self
219  {
220  $this->view->assign('content', ‪$content);
221  return $this;
222  }
223 
230  public function ‪setTitle(‪$title): self
231  {
232  $this->title = ‪$title;
233  return $this;
234  }
235 
241  public function ‪getIconFactory()
242  {
243  return ‪$this->iconFactory;
244  }
245 
252  public function ‪__construct()
253  {
254  $this->view = GeneralUtility::makeInstance(StandaloneView::class);
255  $this->view->setPartialRootPaths($this->partialRootPaths);
256  $this->view->setTemplateRootPaths($this->templateRootPaths);
257  $this->view->setLayoutRootPaths($this->layoutRootPaths);
258  $this->view->setTemplate($this->templateFile);
259  $this->pageRenderer = GeneralUtility::makeInstance(PageRenderer::class);
260  $this->docHeaderComponent = GeneralUtility::makeInstance(DocHeaderComponent::class);
261  $this->iconFactory = GeneralUtility::makeInstance(IconFactory::class);
262  }
263 
267  protected function ‪loadJavaScripts()
268  {
269  $this->pageRenderer->loadRequireJsModule('bootstrap');
270  if (TYPO3_MODE === 'BE' && $this->‪getBackendUserAuthentication() && !empty($this->‪getBackendUserAuthentication()->user)) {
271  $this->pageRenderer->loadRequireJsModule('TYPO3/CMS/Backend/ContextHelp');
272  $this->pageRenderer->loadRequireJsModule('TYPO3/CMS/Backend/DocumentHeader');
273  $this->pageRenderer->loadRequireJsModule('TYPO3/CMS/Backend/SplitButtons');
274  }
275  }
276 
280  protected function ‪loadStylesheets()
281  {
282  if (!empty(‪$GLOBALS['TBE_STYLES']['stylesheet'])) {
283  $this->pageRenderer->addCssFile(‪$GLOBALS['TBE_STYLES']['stylesheet']);
284  }
285  if (!empty(‪$GLOBALS['TBE_STYLES']['stylesheet2'])) {
286  $this->pageRenderer->addCssFile(‪$GLOBALS['TBE_STYLES']['stylesheet2']);
287  }
288  }
289 
293  protected function ‪setupPage()
294  {
295  // Yes, hardcoded on purpose
296  $this->pageRenderer->setXmlPrologAndDocType('<!DOCTYPE html>');
297  $this->pageRenderer->setCharSet('utf-8');
298  $this->pageRenderer->setLanguage(‪$GLOBALS['LANG']->lang);
299  $this->pageRenderer->setMetaTag('name', 'viewport', 'width=device-width, initial-scale=1');
300  }
301 
305  protected function ‪setJavaScriptCodeArray()
306  {
307  foreach ($this->javascriptCodeArray as $name => $code) {
308  $this->pageRenderer->addJsInlineCode($name, $code, false);
309  }
310  }
311 
319  public function ‪addJavaScriptCode($name = '', $code = ''): self
320  {
321  $this->javascriptCodeArray[$name] = $code;
322  return $this;
323  }
324 
330  public function ‪getDocHeaderComponent()
331  {
333  }
334 
340  public function ‪renderContent()
341  {
342  $this->‪setupPage();
343  $this->pageRenderer->setTitle($this->title);
344  $this->‪loadJavaScripts();
345  $this->‪setJavaScriptCodeArray();
346  $this->‪loadStylesheets();
347 
348  $this->view->assign('docHeader', $this->docHeaderComponent->docHeaderContent());
349  if ($this->moduleId) {
350  $this->view->assign('moduleId', $this->moduleId);
351  }
352  if ($this->moduleName) {
353  $this->view->assign('moduleName', $this->moduleName);
354  }
355  $this->view->assign('uiBlock', $this->uiBlock);
356  $this->view->assign('flashMessageQueueIdentifier', $this->‪getFlashMessageQueue()->getIdentifier());
357  $renderedPage = $this->pageRenderer->render(‪PageRenderer::PART_HEADER);
358  $renderedPage .= ‪$this->bodyTag;
359  $renderedPage .= $this->view->render();
360  $this->pageRenderer->addJsFooterInlineCode('updateSignals', ‪BackendUtility::getUpdateSignalCode());
361  $renderedPage .= $this->pageRenderer->render(‪PageRenderer::PART_FOOTER);
362 
363  return $renderedPage;
364  }
365 
371  public function ‪getPageRenderer()
372  {
373  return ‪$this->pageRenderer;
374  }
375 
382  public function ‪setForm($formTag = ''): self
383  {
384  $this->view->assign('formTag', $formTag);
385  return $this;
386  }
387 
394  public function ‪setModuleId(‪$moduleId): self
395  {
396  $this->moduleId = ‪$moduleId;
398  return $this;
399  }
400 
407  public function ‪setModuleName(‪$moduleName): self
408  {
409  $this->moduleName = ‪$moduleName;
410  return $this;
411  }
412 
419  public function ‪registerModuleMenu($moduleMenuIdentifier): self
420  {
421  if (isset(‪$GLOBALS['TBE_MODULES_EXT'][$moduleMenuIdentifier])) {
422  $menuEntries =
423  ‪$GLOBALS['TBE_MODULES_EXT'][$moduleMenuIdentifier]['MOD_MENU']['function'];
424  $menu = $this->‪getDocHeaderComponent()->‪getMenuRegistry()->‪makeMenu()->‪setIdentifier('MOD_FUNC');
425  foreach ($menuEntries as $menuEntry) {
426  $menuItem = $menu->‪makeMenuItem()
427  ->‪setTitle($menuEntry['title'])
428  ->setHref('#');
429  $menu->addMenuItem($menuItem);
430  }
431  $this->docHeaderComponent->getMenuRegistry()->addMenu($menu);
432  }
433  return $this;
434  }
435 
453  public function ‪getDynamicTabMenu(array $menuItems, $domId, $defaultTabIndex = 1, $collapsible = false, $wrapContent = true, $storeLastActiveTab = true)
454  {
455  $this->pageRenderer->loadRequireJsModule('TYPO3/CMS/Backend/Tabs');
456  $templatePath = ‪ExtensionManagementUtility::extPath('backend')
457  . 'Resources/Private/Templates/DocumentTemplate/';
458  ‪$view = GeneralUtility::makeInstance(StandaloneView::class);
459  ‪$view->‪setTemplatePathAndFilename($templatePath . ($collapsible ? 'Collapse.html' : 'Tabs.html'));
460  ‪$view->‪setPartialRootPaths([$templatePath . 'Partials']);
462  'id' => 'DTM-' . GeneralUtility::shortMD5($domId),
463  'items' => $menuItems,
464  'defaultTabIndex' => $defaultTabIndex,
465  'wrapContent' => $wrapContent,
466  'storeLastActiveTab' => $storeLastActiveTab,
467  ]);
468  return ‪$view->‪render();
469  }
470 
471  /*******************************************
472  * THE FOLLOWING METHODS ARE SUBJECT TO BE DEPRECATED / DROPPED!
473  *
474  * These methods have been copied over from DocumentTemplate and enables
475  * core modules to drop the dependency to DocumentTemplate altogether without
476  * rewriting these modules now.
477  * The methods below are marked as internal and will be removed
478  * one-by-one with further refactoring of modules.
479  *
480  * Do not use these methods within own extensions if possible or
481  * be prepared to change this later again.
482  *******************************************/
483 
495  public function ‪loadJavascriptLib($lib): self
496  {
497  trigger_error('ModuleTemplate->loadJavascriptLib() should not be used any longer, as this method will be removed in TYPO3 v10.0.', E_USER_DEPRECATED);
498  $this->pageRenderer->addJsFile($lib);
499  return $this;
500  }
501 
525  public function ‪makeShortcutIcon($gvList, $setList, $modName, $motherModName = '', $displayName = '', $classes = 'btn btn-default btn-sm')
526  {
527  $gvList = 'route,id,' . $gvList;
528  $storeUrl = $this->‪makeShortcutUrl($gvList, $setList);
529  $pathInfo = parse_url(GeneralUtility::getIndpEnv('REQUEST_URI'));
530  // Fallback for alt_mod. We still pass in the old xMOD... stuff,
531  // but TBE_MODULES only knows about "record_edit".
532  // We still need to pass the xMOD name to createShortcut below,
533  // since this is used for icons.
534  ‪$moduleName = $modName === 'xMOD_alt_doc.php' ? 'record_edit' : $modName;
535  // Add the module identifier automatically if typo3/index.php is used:
536  // @todo: routing
537  if (GeneralUtility::_GET('route') !== null) {
538  $storeUrl = '&route=' . ‪$moduleName . $storeUrl;
539  }
540  if ((int)$motherModName === 1) {
541  $motherModule = 'top.currentModuleLoaded';
542  } elseif ($motherModName) {
543  $motherModule = GeneralUtility::quoteJSvalue($motherModName);
544  } else {
545  $motherModule = '\'\'';
546  }
547  $confirmationText = GeneralUtility::quoteJSvalue(
548  $this->‪getLanguageService()->sL('LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:labels.makeBookmark')
549  );
550 
551  $shortcutUrl = $pathInfo['path'] . '?' . $storeUrl;
552  $shortcutRepository = GeneralUtility::makeInstance(ShortcutRepository::class);
553  $shortcutExist = $shortcutRepository->shortcutExists($shortcutUrl);
554 
555  if ($shortcutExist) {
556  return '<a class="active ' . htmlspecialchars($classes) . '" title="">' .
557  $this->iconFactory->getIcon('actions-system-shortcut-active', ‪Icon::SIZE_SMALL)->render() . '</a>';
558  }
559 
560  $url = GeneralUtility::quoteJSvalue(rawurlencode($shortcutUrl));
561  $onClick = 'top.TYPO3.ShortcutMenu.createShortcut(' . GeneralUtility::quoteJSvalue(rawurlencode($modName)) .
562  ', ' . $url . ', ' . $confirmationText . ', ' . $motherModule . ', this, ' . GeneralUtility::quoteJSvalue($displayName) . ');return false;';
563 
564  return '<a href="#" class="' . htmlspecialchars($classes) . '" onclick="' . htmlspecialchars($onClick) . '" title="' .
565  htmlspecialchars($this->‪getLanguageService()->sL('LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:labels.makeBookmark')) . '">' .
566  $this->iconFactory->getIcon('actions-system-shortcut-new', ‪Icon::SIZE_SMALL)->render() . '</a>';
567  }
568 
581  public function ‪makeShortcutUrl($gvList, $setList)
582  {
583  $getParams = GeneralUtility::_GET();
584  $storeArray = array_merge(
585  GeneralUtility::compileSelectedGetVarsFromArray($gvList, $getParams),
586  ['SET' => GeneralUtility::compileSelectedGetVarsFromArray($setList, (array)‪$GLOBALS['SOBE']->MOD_SETTINGS)]
587  );
588  return ‪HttpUtility::buildQueryString($storeArray, '&');
589  }
590 
596  protected function ‪getBackendUserAuthentication()
597  {
598  return ‪$GLOBALS['BE_USER'];
599  }
600 
606  protected function ‪getLanguageService()
607  {
608  return ‪$GLOBALS['LANG'];
609  }
610 
626  public function ‪icons($type)
627  {
628  trigger_error('ModuleTemplate->icons() should not be used any longer, as this will be removed in TYPO3 v10.0.', E_USER_DEPRECATED);
629  $icon = '';
630  switch ($type) {
632  $icon = 'status-dialog-error';
633  break;
635  $icon = 'status-dialog-warning';
636  break;
638  $icon = 'status-dialog-notification';
639  break;
641  $icon = 'status-dialog-ok';
642  break;
643  default:
644  // Do nothing
645  }
646  if ($icon != '') {
647  return $this->iconFactory->getIcon($icon, ‪Icon::SIZE_SMALL)->render();
648  }
649  return '';
650  }
651 
661  public function ‪redirectUrls($thisLocation = '')
662  {
663  $thisLocation = $thisLocation ? $thisLocation : GeneralUtility::linkThisScript([
664  'CB' => '',
665  'SET' => '',
666  'cmd' => '',
667  'popViewId' => ''
668  ]);
669  $out = '
670  var T3_RETURN_URL = ' . GeneralUtility::quoteJSvalue(str_replace('%20', '', rawurlencode(GeneralUtility::sanitizeLocalUrl(GeneralUtility::_GP('returnUrl'))))) . ';
671  var T3_THIS_LOCATION = ' . GeneralUtility::quoteJSvalue(str_replace('%20', '', rawurlencode($thisLocation))) . '
672  ';
673  return $out;
674  }
675 
684  public function ‪header($text)
685  {
686  return '
687 
688  <!-- MAIN Header in page top -->
689  <h1 class="t3js-title-inlineedit">' . htmlspecialchars($text) . '</h1>
690 ';
691  }
692 
703  public function ‪addFlashMessage($messageBody, $messageTitle = '', $severity = ‪AbstractMessage::OK, $storeInSession = true): self
704  {
705  if (!is_string($messageBody)) {
706  throw new \InvalidArgumentException('The message body must be of type string, "' . gettype($messageBody) . '" given.', 1446483133);
707  }
708  /* @var \TYPO3\CMS\Core\Messaging\FlashMessage $flashMessage */
709  $flashMessage = GeneralUtility::makeInstance(
710  \‪TYPO3\CMS\Core\Messaging\FlashMessage::class,
711  $messageBody,
712  $messageTitle,
713  $severity,
714  $storeInSession
715  );
716  $this->‪getFlashMessageQueue()->enqueue($flashMessage);
717  return $this;
718  }
719 
724  public function ‪setFlashMessageQueue(‪$flashMessageQueue): self
725  {
726  $this->flashMessageQueue = ‪$flashMessageQueue;
727  return $this;
728  }
729 
733  protected function ‪getFlashMessageQueue()
734  {
735  if (!isset($this->flashMessageQueue)) {
737  $service = GeneralUtility::makeInstance(FlashMessageService::class);
738  $this->flashMessageQueue = $service->getMessageQueueByIdentifier();
739  }
741  }
742 
746  public function ‪isUiBlock(): bool
747  {
748  return ‪$this->uiBlock;
749  }
750 
755  public function ‪setUiBlock(bool ‪$uiBlock): self
756  {
757  $this->uiBlock = ‪$uiBlock;
758  return $this;
759  }
760 }
‪TYPO3\CMS\Backend\Template\Components\Menu\Menu\makeMenuItem
‪MenuItem makeMenuItem()
Definition: Menu.php:132
‪TYPO3\CMS\Backend\Template\ModuleTemplate\loadJavaScripts
‪loadJavaScripts()
Definition: ModuleTemplate.php:251
‪TYPO3\CMS\Core\Imaging\Icon\SIZE_SMALL
‪const SIZE_SMALL
Definition: Icon.php:29
‪TYPO3\CMS\Backend\Template\ModuleTemplate\STATUS_ICON_NOTIFICATION
‪const STATUS_ICON_NOTIFICATION
Definition: ModuleTemplate.php:60
‪TYPO3\CMS\Backend\Backend\Shortcut\ShortcutRepository
Definition: ShortcutRepository.php:41
‪TYPO3\CMS\Backend\Template\Components\DocHeaderComponent
Definition: DocHeaderComponent.php:23
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setupPage
‪setupPage()
Definition: ModuleTemplate.php:277
‪TYPO3\CMS\Core\Messaging\AbstractMessage
Definition: AbstractMessage.php:24
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$docHeaderComponent
‪DocHeaderComponent $docHeaderComponent
Definition: ModuleTemplate.php:73
‪TYPO3\CMS\Backend\Template\ModuleTemplate\icons
‪string icons($type)
Definition: ModuleTemplate.php:610
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getLanguageService
‪LanguageService getLanguageService()
Definition: ModuleTemplate.php:590
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$moduleId
‪string $moduleId
Definition: ModuleTemplate.php:138
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$bodyTag
‪string $bodyTag
Definition: ModuleTemplate.php:156
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$moduleName
‪string $moduleName
Definition: ModuleTemplate.php:144
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setTitle
‪self setTitle($title)
Definition: ModuleTemplate.php:214
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$flashMessageQueue
‪TYPO3 CMS Core Messaging FlashMessageQueue $flashMessageQueue
Definition: ModuleTemplate.php:162
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setForm
‪self setForm($formTag='')
Definition: ModuleTemplate.php:366
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$pageRenderer
‪PageRenderer $pageRenderer
Definition: ModuleTemplate.php:86
‪TYPO3\CMS\Core\Imaging\Icon
Definition: Icon.php:25
‪TYPO3\CMS\Backend\Template\ModuleTemplate\loadJavascriptLib
‪self loadJavascriptLib($lib)
Definition: ModuleTemplate.php:479
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setJavaScriptCodeArray
‪setJavaScriptCodeArray()
Definition: ModuleTemplate.php:289
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getBackendUserAuthentication
‪BackendUserAuthentication getBackendUserAuthentication()
Definition: ModuleTemplate.php:580
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setUiBlock
‪self setUiBlock(bool $uiBlock)
Definition: ModuleTemplate.php:739
‪TYPO3\CMS\Backend\Template\ModuleTemplate\isUiBlock
‪bool isUiBlock()
Definition: ModuleTemplate.php:730
‪TYPO3
‪TYPO3\CMS\Backend\Template\ModuleTemplate\header
‪string header($text)
Definition: ModuleTemplate.php:668
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$templateFile
‪string $templateFile
Definition: ModuleTemplate.php:114
‪TYPO3\CMS\Backend\Template\ModuleTemplate\STATUS_ICON_WARNING
‪const STATUS_ICON_WARNING
Definition: ModuleTemplate.php:53
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getPageRenderer
‪PageRenderer getPageRenderer()
Definition: ModuleTemplate.php:355
‪TYPO3\CMS\Core\Imaging\IconFactory
Definition: IconFactory.php:31
‪TYPO3\CMS\Backend\Template\ModuleTemplate\redirectUrls
‪string redirectUrls($thisLocation='')
Definition: ModuleTemplate.php:645
‪TYPO3\CMS\Backend\Template\Components\Menu\Menu\setIdentifier
‪Menu setIdentifier($identifier)
Definition: Menu.php:72
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$content
‪string $content
Definition: ModuleTemplate.php:126
‪TYPO3\CMS\Backend\Template\ModuleTemplate\makeShortcutUrl
‪string makeShortcutUrl($gvList, $setList)
Definition: ModuleTemplate.php:565
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setModuleId
‪self setModuleId($moduleId)
Definition: ModuleTemplate.php:378
‪TYPO3\CMS\Backend\Template\ModuleTemplate
Definition: ModuleTemplate.php:40
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$layoutRootPaths
‪string[] $layoutRootPaths
Definition: ModuleTemplate.php:108
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getFlashMessageQueue
‪TYPO3 CMS Core Messaging FlashMessageQueue getFlashMessageQueue()
Definition: ModuleTemplate.php:717
‪TYPO3\CMS\Core\Utility\ExtensionManagementUtility
Definition: ExtensionManagementUtility.php:36
‪TYPO3\CMS\Backend\Template\Components\MenuRegistry\makeMenu
‪Menu makeMenu()
Definition: MenuRegistry.php:73
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$iconFactory
‪IconFactory $iconFactory
Definition: ModuleTemplate.php:132
‪TYPO3\CMS\Core\Page\PageRenderer
Definition: PageRenderer.php:35
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$javascriptCodeArray
‪array $javascriptCodeArray
Definition: ModuleTemplate.php:80
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setBodyTag
‪self setBodyTag($bodyTag)
Definition: ModuleTemplate.php:180
‪TYPO3\CMS\Backend\Template\ModuleTemplate\addJavaScriptCode
‪self addJavaScriptCode($name='', $code='')
Definition: ModuleTemplate.php:303
‪TYPO3\CMS\Core\Page\PageRenderer\PART_FOOTER
‪const PART_FOOTER
Definition: PageRenderer.php:39
‪TYPO3\CMS\Core\Utility\HttpUtility\buildQueryString
‪static string buildQueryString(array $parameters, string $prependCharacter='', bool $skipEmptyParameters=false)
Definition: HttpUtility.php:160
‪TYPO3\CMS\Backend\Template
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$uiBlock
‪bool $uiBlock
Definition: ModuleTemplate.php:90
‪TYPO3\CMS\Fluid\View\AbstractTemplateView\setTemplatePathAndFilename
‪setTemplatePathAndFilename($templatePathAndFilename)
Definition: AbstractTemplateView.php:100
‪TYPO3\CMS\Backend\Template\ModuleTemplate\makeShortcutIcon
‪string makeShortcutIcon($gvList, $setList, $modName, $motherModName='', $displayName='', $classes='btn btn-default btn-sm')
Definition: ModuleTemplate.php:509
‪TYPO3\CMS\Core\Authentication\BackendUserAuthentication
Definition: BackendUserAuthentication.php:45
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getDynamicTabMenu
‪string getDynamicTabMenu(array $menuItems, $domId, $defaultTabIndex=1, $collapsible=false, $wrapContent=true, $storeLastActiveTab=true)
Definition: ModuleTemplate.php:437
‪TYPO3\CMS\Backend\Utility\BackendUtility
Definition: BackendUtility.php:72
‪TYPO3\CMS\Backend\Template\ModuleTemplate\registerModuleMenu
‪self registerModuleMenu($moduleMenuIdentifier)
Definition: ModuleTemplate.php:403
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getBodyTag
‪string getBodyTag()
Definition: ModuleTemplate.php:169
‪TYPO3\CMS\Backend\Template\ModuleTemplate\addFlashMessage
‪self addFlashMessage($messageBody, $messageTitle='', $severity=AbstractMessage::OK, $storeInSession=true)
Definition: ModuleTemplate.php:687
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$partialRootPaths
‪string[] $partialRootPaths
Definition: ModuleTemplate.php:102
‪TYPO3\CMS\Backend\Template\Components\DocHeaderComponent\getMenuRegistry
‪MenuRegistry getMenuRegistry()
Definition: DocHeaderComponent.php:71
‪TYPO3\CMS\Core\Messaging\AbstractMessage\OK
‪const OK
Definition: AbstractMessage.php:27
‪TYPO3\CMS\Backend\Template\ModuleTemplate\__construct
‪__construct()
Definition: ModuleTemplate.php:236
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setContent
‪self setContent($content)
Definition: ModuleTemplate.php:202
‪TYPO3\CMS\Fluid\View\StandaloneView
Definition: StandaloneView.php:32
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getIconFactory
‪IconFactory getIconFactory()
Definition: ModuleTemplate.php:225
‪$GLOBALS
‪$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['adminpanel']['modules']
Definition: ext_localconf.php:5
‪TYPO3\CMS\Backend\Template\ModuleTemplate\STATUS_ICON_OK
‪const STATUS_ICON_OK
Definition: ModuleTemplate.php:67
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setModuleName
‪self setModuleName($moduleName)
Definition: ModuleTemplate.php:391
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getDocHeaderComponent
‪DocHeaderComponent getDocHeaderComponent()
Definition: ModuleTemplate.php:314
‪TYPO3\CMS\Extbase\Mvc\View\ViewInterface\render
‪string render()
‪TYPO3\CMS\Fluid\View\Exception\InvalidTemplateResourceException
Definition: LegacyClassesForIde.php:72
‪TYPO3\CMS\Backend\Template\ModuleTemplate\setFlashMessageQueue
‪self setFlashMessageQueue($flashMessageQueue)
Definition: ModuleTemplate.php:708
‪TYPO3\CMS\Core\Utility\ExtensionManagementUtility\extPath
‪static string extPath($key, $script='')
Definition: ExtensionManagementUtility.php:149
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$templateRootPaths
‪string[] $templateRootPaths
Definition: ModuleTemplate.php:96
‪TYPO3\CMS\Core\Utility\HttpUtility
Definition: HttpUtility.php:21
‪TYPO3\CMS\Core\Localization\LanguageService
Definition: LanguageService.php:29
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$title
‪string $title
Definition: ModuleTemplate.php:150
‪TYPO3\CMS\Fluid\View\AbstractTemplateView\setPartialRootPaths
‪setPartialRootPaths(array $partialRootPaths)
Definition: AbstractTemplateView.php:131
‪TYPO3\CMS\Core\Utility\GeneralUtility
Definition: GeneralUtility.php:45
‪TYPO3\CMS\Backend\Template\Components\AbstractControl\setTitle
‪$this setTitle($title)
Definition: AbstractControl.php:108
‪TYPO3\CMS\Backend\Utility\BackendUtility\getUpdateSignalCode
‪static string getUpdateSignalCode()
Definition: BackendUtility.php:3190
‪TYPO3\CMS\Core\Page\PageRenderer\PART_HEADER
‪const PART_HEADER
Definition: PageRenderer.php:38
‪TYPO3\CMS\Extbase\Mvc\View\ViewInterface\assignMultiple
‪TYPO3 CMS Extbase Mvc View ViewInterface assignMultiple(array $values)
‪TYPO3\CMS\Backend\Template\ModuleTemplate\STATUS_ICON_ERROR
‪const STATUS_ICON_ERROR
Definition: ModuleTemplate.php:46
‪TYPO3\CMS\Backend\Template\ModuleTemplate\$view
‪StandaloneView $view
Definition: ModuleTemplate.php:120
‪TYPO3\CMS\Core\Messaging\FlashMessageService
Definition: FlashMessageService.php:25
‪TYPO3\CMS\Backend\Template\ModuleTemplate\getView
‪StandaloneView getView()
Definition: ModuleTemplate.php:191
‪TYPO3\CMS\Backend\Template\ModuleTemplate\renderContent
‪string renderContent()
Definition: ModuleTemplate.php:324
‪TYPO3\CMS\Backend\Template\ModuleTemplate\loadStylesheets
‪loadStylesheets()
Definition: ModuleTemplate.php:264