From d9f49083547bd9f2469cc40789ce992ba6823831 Mon Sep 17 00:00:00 2001
From: Andreas Fernandez <a.fernandez@scripting-base.de>
Date: Wed, 5 Jul 2023 16:49:11 +0200
Subject: [PATCH] [BUGFIX] Allow selection of root folder in Folder Browser

The Folder Browser now has a button that allows to select the currently
opened browser, which is already possible in the Link Browser for pages.

As a side-effect, this allows the selection of file storages again.

Resolves: #100789
Releases: main, 12.4
Change-Id: Ifa30c7cc1f65a2b313f689f5c06c41734408f403
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/79742
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: core-ci <typo3@b13.com>
---
 .../Private/Templates/ElementBrowser/Folder.html         | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/typo3/sysext/filelist/Resources/Private/Templates/ElementBrowser/Folder.html b/typo3/sysext/filelist/Resources/Private/Templates/ElementBrowser/Folder.html
index 39bd753f5b3f..3b36326ad32b 100644
--- a/typo3/sysext/filelist/Resources/Private/Templates/ElementBrowser/Folder.html
+++ b/typo3/sysext/filelist/Resources/Private/Templates/ElementBrowser/Folder.html
@@ -22,6 +22,15 @@
         </h4>
     </f:if>
     <f:flashMessages queueIdentifier="core.template.flashMessages"/>
+
+    <div data-filelist-element="true" data-filelist-type="folder" data-filelist-identifier="{selectedFolder.combinedIdentifier}" data-filelist-state-identifier="{selectedFolder.identifier}">
+        <button title="{selectedFolder.storage.name}" class="btn btn-default" data-filelist-action="primary">
+            <core:iconForResource resource="{selectedFolder}" />
+            <f:variable name="folderLabel" value="{f:if(condition: '{selectedFolder.name} !== \'\'', then: '{selectedFolder.name}', else: '{selectedFolder.storage.name}')}" />
+            <f:translate key="LLL:EXT:backend/Resources/Private/Language/locallang_browse_links.xlf:linkTo" arguments="{0: '/{folderLabel}'}">{selectedFolder.storage.name}: {selectedFolder.identifier}</f:translate>
+        </button>
+    </div>
+
     <f:format.raw>{content}</f:format.raw>
 </f:section>
 
-- 
GitLab