TYPO3 CMS  TYPO3_8-7
DocHeaderComponent.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 
18 
23 {
29  protected $menuRegistry;
30 
36  protected $metaInformation;
37 
43  protected $buttonBar;
44 
48  protected $enabled = true;
49 
53  public function __construct()
54  {
55  $this->buttonBar = GeneralUtility::makeInstance(ButtonBar::class);
56  $this->menuRegistry = GeneralUtility::makeInstance(MenuRegistry::class);
57  $this->metaInformation = GeneralUtility::makeInstance(MetaInformation::class);
58  }
59 
65  public function setMetaInformation(array $metaInformation)
66  {
67  $this->metaInformation->setRecordArray($metaInformation);
68  }
69 
75  public function getMenuRegistry()
76  {
77  return $this->menuRegistry;
78  }
79 
85  public function getButtonBar()
86  {
87  return $this->buttonBar;
88  }
89 
95  public function isEnabled()
96  {
97  return $this->enabled;
98  }
99 
103  public function enable()
104  {
105  $this->enabled = true;
106  }
107 
111  public function disable()
112  {
113  $this->enabled = false;
114  }
115 
121  public function docHeaderContent()
122  {
123  return [
124  'enabled' => $this->isEnabled(),
125  'buttons' => $this->buttonBar->getButtons(),
126  'menus' => $this->menuRegistry->getMenus(),
127  'metaInformation' => $this->metaInformation
128  ];
129  }
130 }
static makeInstance($className,... $constructorArguments)