2 namespace TYPO3\CMS\Backend\Controller;
93 $response->
getBody()->write($this->content);
118 if (!empty($this->scopeData)) {
120 $this->foldertree->thisScript = $this->scopeData[
'script'];
121 $this->foldertree->ext_noTempRecyclerDirs = $this->scopeData[
'ext_noTempRecyclerDirs'];
125 DummyLinkParameterProvider::class,
126 $this->scopeData[
'browser'],
127 $this->scopeData[
'script']
129 $this->foldertree->setLinkParameterProvider($linkParamProvider);
133 $this->foldertree->thisScript = BackendUtility::getModuleUrl(
'file_navframe');
138 $this->foldertree->ext_IconMode = $this->
getBackendUser()->getTSConfigVal(
'options.folderTree.disableIconLinkToContextmenu');
151 $this->doHighlight = !$this->
getBackendUser()->getTSConfigVal(
'options.pageTree.disableTitleHighlight');
153 $this->moduleTemplate->setBodyTag(
'<body id="ext-backend-Modules-FileSystemNavigationFrame-index-php">');
157 Tree.ajaxID = "sc_alt_file_navframe_expandtoggle";
158 Tree.registerDragDropHandlers()';
159 if ($this->doHighlight) {
160 $hlClass = $this->
getBackendUser()->workspace === 0 ?
'active' :
'active active-ws wsver' .
$GLOBALS[
'BE_USER']->workspace;
162 Tree.highlightClass = "' . $hlClass .
'";
163 Tree.highlightActiveItem("", top.fsMod.navFrameHighlightedID["file"]);
168 $pageRenderer = $this->moduleTemplate->getPageRenderer();
169 $pageRenderer->loadRequireJsModule(
'TYPO3/CMS/Backend/ClickMenu');
170 $pageRenderer->loadRequireJsModule(
'TYPO3/CMS/Backend/LegacyTree',
'function() {
171 DragDrop.table = "folders";
172 ' . $dragDropCode .
'
176 $inlineJs = ($this->currentSubScript ?
'top.currentSubScript=unescape("' . rawurlencode($this->currentSubScript) .
'");' :
'') .
'
177 // Function, loading the list frame from navigation tree:
178 function jumpTo(id, linkObj, highlightID, bank) {
179 var theUrl = top.currentSubScript;
180 if (theUrl.indexOf("?") != -1) {
181 theUrl += "&id=" + id
183 theUrl += "?id=" + id
185 top.fsMod.currentBank = bank;
186 top.TYPO3.Backend.ContentContainer.setUrl(theUrl);
188 ' . ($this->doHighlight ?
'Tree.highlightActiveItem("file", highlightID + "_" + bank);' :
'') .
'
189 if (linkObj) { linkObj.blur(); }
192 ' . ($this->cMR ?
' jumpTo(top.fsMod.recentIds[\'file\'],\'\');' :
'');
194 $this->moduleTemplate->getPageRenderer()->addJsInlineCode(
195 'FileSystemNavigationFrame',
208 $tree = $this->foldertree->getBrowsableTree();
210 $this->moduleTemplate->setContent($tree);
214 $this->moduleTemplate->setTitle(
'TYPO3 Folder Tree');
215 $this->content = $this->moduleTemplate->renderContent();
233 protected function getButtons()
236 $buttonBar = $this->moduleTemplate->getDocHeaderComponent()->getButtonBar();
239 $iconFactory = $this->moduleTemplate->getIconFactory();
242 $refreshButton = $buttonBar->makeLinkButton()
245 $this->
getLanguageService()->sL(
'LLL:EXT:lang/locallang_core.xlf:labels.reload',
true)
250 $cshButton = $buttonBar->makeHelpButton()
251 ->setModuleName(
'xMOD_csh_corebe')
252 ->setFieldName(
'filetree');
253 $buttonBar->addButton($cshButton);
270 $tree = $this->foldertree->getBrowsableTree();
271 if ($this->foldertree->getAjaxStatus() ===
false) {
274 $response->
getBody()->write(json_encode($tree));