2 declare(strict_types = 1);
49 $languageAspect = GeneralUtility::makeInstance(Context::class)->getAspect(
'language');
50 $iconFactory = GeneralUtility::makeInstance(IconFactory::class);
54 $uriBuilder = GeneralUtility::makeInstance(UriBuilder::class);
58 $returnUrl = GeneralUtility::getIndpEnv(
'REQUEST_URI');
59 $classes =
'typo3-adminPanel-btn typo3-adminPanel-btn-default';
61 $output[] =
'<div class="typo3-adminPanel-form-group">';
62 $output[] =
' <div class="typo3-adminPanel-btn-group" role="group">';
65 $link = (string)$uriBuilder->buildUriFromRoute(
68 'element' =>
'pages:' . $id,
69 'returnUrl' => $returnUrl,
72 $title = $this->
getLabel(
'edit_recordHistory');
76 htmlspecialchars($link, ENT_QUOTES | ENT_HTML5) .
87 'returnUrl' => $returnUrl,
89 if (!empty($languageAspect->getId())) {
90 $linkParameters[
'sys_language_uid'] = $languageAspect->getId();
92 $link = (string)$uriBuilder->buildUriFromRoute($moduleName, $linkParameters);
94 $title = $this->
getLabel(
'edit_newContentElement');
98 htmlspecialchars($link, ENT_QUOTES | ENT_HTML5) .
108 $link = (string)$uriBuilder->buildUriFromRoute(
113 'returnUrl' => $returnUrl,
116 $icon = $iconFactory->getIcon(
'actions-document-move',
Icon::SIZE_SMALL)->render();
117 $title = $this->
getLabel(
'edit_move_page');
121 htmlspecialchars($link, ENT_QUOTES | ENT_HTML5) .
131 $link = (string)$uriBuilder->buildUriFromRoute(
136 'returnUrl' => $returnUrl,
140 $title = $this->
getLabel(
'edit_newPage');
144 htmlspecialchars($link, ENT_QUOTES | ENT_HTML5) .
154 $link = (string)$uriBuilder->buildUriFromRoute(
157 'edit[pages][' . $id .
']' =>
'edit',
159 'returnUrl' => $returnUrl,
163 $title = $this->
getLabel(
'edit_editPageProperties');
167 htmlspecialchars($link, ENT_QUOTES | ENT_HTML5) .
177 $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)
178 ->getQueryBuilderForTable(
'pages');
179 $queryBuilder->setRestrictions(GeneralUtility::makeInstance(FrontendRestrictionContainer::class));
181 ->select(
'uid',
'pid',
't3ver_state')
184 $queryBuilder->expr()->eq(
185 $GLOBALS[
'TCA'][
'pages'][
'ctrl'][
'transOrigPointerField'],
186 $queryBuilder->createNamedParameter($id, \PDO::PARAM_INT)
188 $queryBuilder->expr()->eq(
189 $GLOBALS[
'TCA'][
'pages'][
'ctrl'][
'languageField'],
190 $queryBuilder->createNamedParameter($languageAspect->getId(), \PDO::PARAM_INT)
196 $tsfe->sys_page->versionOL(
'pages', $row);
197 if (is_array($row)) {
198 $link = (string)$uriBuilder->buildUriFromRoute(
201 'edit[pages][' . $row[
'uid'] .
']' =>
'edit',
203 'returnUrl' => $returnUrl,
206 $icon = $iconFactory->getIcon(
'mimetypes-x-content-page-language-overlay',
Icon::SIZE_SMALL)
208 $title = $this->
getLabel(
'edit_editPageOverlay');
212 htmlspecialchars($link, ENT_QUOTES | ENT_HTML5) .
223 $link = (string)$uriBuilder->buildUriFromRoute(
227 'returnUrl' => GeneralUtility::getIndpEnv(
'REQUEST_URI'),
230 $icon = $iconFactory->getIcon(
'actions-system-list-open',
Icon::SIZE_SMALL)->render();
231 $title = $this->
getLabel(
'edit_db_list');
235 htmlspecialchars($link, ENT_QUOTES | ENT_HTML5) .
256 return htmlspecialchars($this->
getLanguageService()->getLL($key), ENT_QUOTES | ENT_HTML5);