diff --git a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/HelpToolbarItemDropDown.html b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/HelpToolbarItemDropDown.html index 7d399805cc02e0709952af46ea91f5809e469884..dffd1ac9762e8f047b02178504b8dea2179807d9 100644 --- a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/HelpToolbarItemDropDown.html +++ b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/HelpToolbarItemDropDown.html @@ -1,7 +1,6 @@ <html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" data-namespace-typo3-fluid="true"> <p class="h3 dropdown-headline" id="help-dropdown-headline">{f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.help')}</p> <f:if condition="{modules}"> - <hr class="dropdown-divider" aria-hidden="true"> <nav class="t3js-helpmenu"> <ul class="dropdown-list" role="menu" aria-labelledby="help-dropdown-headline"> <f:for each="{modules}" as="module"> diff --git a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/ShortcutToolbarItemDropDown.html b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/ShortcutToolbarItemDropDown.html index fa668cdfd2f10e6b1e38b8230b3fdd32f86f89d9..ad6a2c6eb0fdd576aae798cad6660d904f694c2f 100644 --- a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/ShortcutToolbarItemDropDown.html +++ b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/ShortcutToolbarItemDropDown.html @@ -13,7 +13,12 @@ <hr class="dropdown-divider" aria-hidden="true"> </f:if> <f:if condition="{group.title}"> - <p class="h3 dropdown-headline" id="shortcut-group-{group.id}">{group.title}</p> + <f:then> + <p class="h4 dropdown-headline" id="shortcut-group-{group.id}">{group.title}</p> + </f:then> + <f:else if="{shortcutMenu -> f:count()} > 1"> + <p class="h4 dropdown-headline"><f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.bookmarks.notGrouped" /></p> + </f:else> </f:if> <ul class="dropdown-list" data-shortcutgroup="{group.id}"> <f:for each="{group.shortcuts}" as="shortcut"> @@ -33,13 +38,19 @@ </span> </span> </a> - <a href="#" class="dropdown-item dropdown-item-action t3js-shortcut-edit" + <a + href="#" + class="dropdown-item dropdown-item-action t3js-shortcut-edit" title="{f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.bookmarksEdit')}" + role="button" > <core:icon identifier="actions-open" alternativeMarkupIdentifier="inline"/> </a> - <a href="#" class="dropdown-item dropdown-item-action t3js-shortcut-delete" + <a + href="#" + class="dropdown-item dropdown-item-action t3js-shortcut-delete" title="{f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.bookmarksDelete')}" + role="button" > <core:icon identifier="actions-delete" alternativeMarkupIdentifier="inline"/> </a> diff --git a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/ShortcutToolbarItemEditForm.html b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/ShortcutToolbarItemEditForm.html index d5bb4bc0f8ee649288f00db1801e41ae3cca9598..3d7bc083981369aee16449253b756e6606ee511d 100644 --- a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/ShortcutToolbarItemEditForm.html +++ b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/ShortcutToolbarItemEditForm.html @@ -1,21 +1,26 @@ -<form class="t3js-shortcut-form" role="form" data-shortcutid="{selectedShortcutId}"> - <p class="h3 dropdown-headline"> - {f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.bookmarksEdit')} - </p> - <hr class="dropdown-divider" aria-hidden="true"> +<p class="h3 dropdown-headline"> + <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.bookmarksEdit" /> +</p> +<form class="t3js-shortcut-form" data-shortcutid="{selectedShortcutId}"> <div class="dropdown-item-text"> <div class="form-group"> - <input type="text" class="form-control" name="shortcutTitle" value="{selectedShortcut.label}"/> + <label for="shortcutTitle" class="form-label"> + <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.bookmarks.field.title" /> + </label> + <input type="text" class="form-control" name="shortcutTitle" id="shortcutTitle" value="{selectedShortcut.label}"/> </div> <div class="form-group"> - <select class="form-select" name="shortcutGroup"> + <label for="shortcutGroup" class="form-label"> + <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.bookmarks.field.group" /> + </label> + <select class="form-select" name="shortcutGroup" id="shortcutGroup"> <f:for each="{shortcutGroups}" key="shortcutGroupId" as="shortcutGroupTitle"> <option value="{shortcutGroupId}" {f:if(condition: '{selectedShortcutGroupId} == {shortcutGroupId}', then: 'selected="selected"')}>{shortcutGroupTitle}</option> </f:for> </select> </div> <input type="hidden" name="shortcutId" value="{selectedShortcutId}" /> - <input type="reset" class="btn btn-default" value="Cancel"/> - <input type="submit" class="btn btn-success" value="Save"/> + <input type="reset" class="btn btn-default" value="{f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_common.xlf:cancel')}" /> + <input type="submit" class="btn btn-primary" value="{f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_common.xlf:save')}" /> </div> </form> diff --git a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/UserToolbarItemDropDown.html b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/UserToolbarItemDropDown.html index 57addb4545ec9851b7c946898d202f22ddc3ff85..78baa899556a9991ce53ea6f9dc8111e9325a9e4 100644 --- a/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/UserToolbarItemDropDown.html +++ b/typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/UserToolbarItemDropDown.html @@ -35,7 +35,7 @@ </f:if> <f:if condition="{f:count(subject: recentUsers)} > 0"> <hr class="dropdown-divider" aria-hidden="true"> - <p class="h3 dropdown-headline"><f:translate key="LLL:EXT:backend/Resources/Private/Language/locallang.xlf:usermodule.su.list" /></p> + <p class="h4 dropdown-headline"><f:translate key="LLL:EXT:backend/Resources/Private/Language/locallang.xlf:usermodule.su.list" /></p> <ul class="modulemenu-group-container"> <f:for each="{recentUsers}" as="user"> <li> @@ -57,34 +57,24 @@ </li> </f:for> </ul> - <hr class="dropdown-divider" aria-hidden="true"> </f:if> +<hr class="dropdown-divider" aria-hidden="true"> <f:if condition="{switchUserMode}"> <f:then> - <typo3-backend-switch-user - class="dropdown-item" - mode="exit"> - <span class="dropdown-item-columns"> - <span class="dropdown-item-column dropdown-item-column-icon" aria-hidden="true"> - <core:icon identifier="actions-logout" size="small" alternativeMarkupIdentifier="inline"/> - </span> - <span class="dropdown-item-column dropdown-item-column-title"> - {f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:buttons.exitSwitchUser')} - </span> - </span> - </typo3-backend-switch-user> + <div class="dropdown-item-text"> + <typo3-backend-switch-user class="btn btn-sm btn-default" mode="exit"> + <core:icon identifier="actions-logout" size="small" alternativeMarkupIdentifier="inline"/> + <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:buttons.exitSwitchUser" /> + </typo3-backend-switch-user> + </div> </f:then> <f:else> - <f:be.link route="logout" class="dropdown-item" target="_top"> - <span class="dropdown-item-columns"> - <span class="dropdown-item-column dropdown-item-column-icon" aria-hidden="true"> - <core:icon identifier="actions-logout" size="small" alternativeMarkupIdentifier="inline"/> - </span> - <span class="dropdown-item-column dropdown-item-column-title"> - {f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:buttons.logout')} - </span> - </span> - </f:be.link> + <div class="dropdown-item-text"> + <f:be.link route="logout" class="btn btn-sm btn-default" target="_top"> + <core:icon identifier="actions-logout" size="small" alternativeMarkupIdentifier="inline"/> + <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:buttons.logout" /> + </f:be.link> + </div> </f:else> </f:if> </html> diff --git a/typo3/sysext/core/Resources/Private/Language/locallang_core.xlf b/typo3/sysext/core/Resources/Private/Language/locallang_core.xlf index 8bde18688aae834a752bd105965261dd5cc78515..7a97d510a6034863a2eb707c84bd25ddc8b512a9 100644 --- a/typo3/sysext/core/Resources/Private/Language/locallang_core.xlf +++ b/typo3/sysext/core/Resources/Private/Language/locallang_core.xlf @@ -978,7 +978,7 @@ Do you want to refresh it now?</source> <source>Close</source> </trans-unit> <trans-unit id="rm.closeAllDocs" resname="rm.closeAllDocs"> - <source>Close all</source> + <source>Close all open documents</source> </trans-unit> <trans-unit id="rm.clearCache_clearCache" resname="rm.clearCache_clearCache"> <source>Clear cache</source> @@ -1365,6 +1365,15 @@ Do you want to refresh it now?</source> <trans-unit id="toolbarItems.bookmarks" resname="toolbarItems.bookmarks"> <source>Bookmarks</source> </trans-unit> + <trans-unit id="toolbarItems.bookmarks.field.group" resname="toolbarItems.bookmarks.field.group"> + <source>Group</source> + </trans-unit> + <trans-unit id="toolbarItems.bookmarks.field.title" resname="toolbarItems.bookmarks.field.title"> + <source>Title</source> + </trans-unit> + <trans-unit id="toolbarItems.bookmarks.notGrouped" resname="toolbarItems.bookmarks.notGrouped"> + <source>Not grouped</source> + </trans-unit> <trans-unit id="toolbarItems.bookmark" resname="toolbarItems.bookmark"> <source>Bookmark</source> </trans-unit> @@ -1419,6 +1428,18 @@ Do you want to refresh it now?</source> <trans-unit id="toolbarItems.workspace" resname="toolbarItems.workspace"> <source>Workspace</source> </trans-unit> + <trans-unit id="toolbarItems.workspace.intro.text" resname="toolbarItems.workspace.intro.text"> + <source>The following workspaces are available to you.</source> + </trans-unit> + <trans-unit id="toolbarItems.workspace.intro.link" resname="toolbarItems.workspace.intro.link"> + <source>Workspaces Module</source> + </trans-unit> + <trans-unit id="toolbarItems.workspace.intro.link.description" resname="toolbarItems.workspace.intro.link.description"> + <source>To view changes made in a workspace, please go to:</source> + </trans-unit> + <trans-unit id="toolbarItems.workspace.noWorkspaceFound" resname="toolbarItems.workspace.noWorkspaceFound"> + <source>No workspaces found!</source> + </trans-unit> <trans-unit id="toolbarItems.sysinfo" resname="toolbarItems.sysinfo"> <source>System Information</source> </trans-unit> diff --git a/typo3/sysext/core/Resources/Private/Language/locallang_misc.xlf b/typo3/sysext/core/Resources/Private/Language/locallang_misc.xlf index 83ff6f59708f054bf9a94d11d1676ed2602198d5..cdf5109e9827d5a75335e8880308de1caa0c9810 100644 --- a/typo3/sysext/core/Resources/Private/Language/locallang_misc.xlf +++ b/typo3/sysext/core/Resources/Private/Language/locallang_misc.xlf @@ -159,18 +159,12 @@ <trans-unit id="bookmark_inactive" resname="bookmark_inactive"> <source>inactive</source> </trans-unit> - <trans-unit id="bookmark_noWSfound" resname="bookmark_noWSfound"> - <source>ERROR: No workspaces found!</source> - </trans-unit> <trans-unit id="bookmark_FEPreview" resname="bookmark_FEPreview"> <source>Enable Frontend Preview</source> </trans-unit> <trans-unit id="bookmark_workspaceComparisonView" resname="bookmark_workspaceComparisonView"> <source>Enable comparison view</source> </trans-unit> - <trans-unit id="bookmark_workspace" resname="bookmark_workspace"> - <source>Go to Workspace Module</source> - </trans-unit> <trans-unit id="overwriteExistingFiles" resname="overwriteExistingFiles"> <source>Overwrite existing files</source> </trans-unit> diff --git a/typo3/sysext/core/Tests/Acceptance/Application/Workspace/WorkspaceModuleCest.php b/typo3/sysext/core/Tests/Acceptance/Application/Workspace/WorkspaceModuleCest.php index ef959dfb99195e3fa39f26da47086b8528be9993..312502970889ec89082f5d67477650f165073e7d 100644 --- a/typo3/sysext/core/Tests/Acceptance/Application/Workspace/WorkspaceModuleCest.php +++ b/typo3/sysext/core/Tests/Acceptance/Application/Workspace/WorkspaceModuleCest.php @@ -65,8 +65,8 @@ final class WorkspaceModuleCest $I->switchToMainFrame(); $I->click(Topbar::$dropdownToggleSelector, self::$topBarModuleSelector); - $I->canSee('Go to Workspace Module', self::$topBarModuleSelector); - $I->click('Go to Workspace Module', self::$topBarModuleSelector); + $I->canSee('Workspaces Module', self::$topBarModuleSelector); + $I->click('Workspaces Module', self::$topBarModuleSelector); $I->comment('See the new page title in Workspace module'); $I->switchToContentFrame(); diff --git a/typo3/sysext/opendocs/Resources/Private/Language/locallang.xlf b/typo3/sysext/opendocs/Resources/Private/Language/locallang.xlf index f24a7333ae2973d8f693981c66b7e04438b6b463..88d40b944ab7eda4d584ea84e0cc73eb0e7a5e75 100644 --- a/typo3/sysext/opendocs/Resources/Private/Language/locallang.xlf +++ b/typo3/sysext/opendocs/Resources/Private/Language/locallang.xlf @@ -3,17 +3,20 @@ <file source-language="en" datatype="plaintext" original="EXT:opendocs/Resources/Private/Language/locallang.xlf" date="2011-10-17T20:22:34Z" product-name="opendocs"> <header/> <body> - <trans-unit id="toolbaritem" resname="toolbaritem"> - <source>Open and Recently Used Documents</source> + <trans-unit id="toolbarItems.headline" resname="toolbarItems.headline"> + <source>Open and recently used documents</source> </trans-unit> - <trans-unit id="open_docs" resname="open_docs"> - <source>Open Documents</source> + <trans-unit id="toolbarItems.openDocuments.headline" resname="toolbarItems.openDocuments.headline"> + <source>Open documents</source> </trans-unit> - <trans-unit id="recent_docs" resname="recent_docs"> - <source>Recently Used Documents</source> + <trans-unit id="toolbarItems.openDocuments.emptyList" resname="toolbarItems.openDocuments.emptyList"> + <source>There are currently no open documents.</source> </trans-unit> - <trans-unit id="no_docs" resname="no_docs"> - <source>There are no open documents at this time.</source> + <trans-unit id="toolbarItems.recentDocuments.headline" resname="toolbarItems.recentDocuments.headline"> + <source>Recently used documents</source> + </trans-unit> + <trans-unit id="toolbarItems.recentDocuments.emptyList" resname="toolbarItems.recentDocuments.emptyList"> + <source>No documents were used recently.</source> </trans-unit> </body> </file> diff --git a/typo3/sysext/opendocs/Resources/Private/Templates/ToolbarItems/DropDown.html b/typo3/sysext/opendocs/Resources/Private/Templates/ToolbarItems/DropDown.html index 18e35e86fddce27f6b7910aa231f24720b657f27..0748caf85b68621095f0a7537300b22425f65394 100644 --- a/typo3/sysext/opendocs/Resources/Private/Templates/ToolbarItems/DropDown.html +++ b/typo3/sysext/opendocs/Resources/Private/Templates/ToolbarItems/DropDown.html @@ -5,68 +5,81 @@ }" /> -<p class="h3 dropdown-headline">{f:translate(key: 'LLL:EXT:opendocs/Resources/Private/Language/locallang.xlf:toolbaritem')}</p> -<f:if condition="{noDocs}"> - <p class="dropdown-item-text"><f:translate key="LLL:EXT:opendocs/Resources/Private/Language/locallang.xlf:no_docs" /></p> -</f:if> +<p class="h3 dropdown-headline"><f:translate key="LLL:EXT:opendocs/Resources/Private/Language/locallang.xlf:toolbarItems.headline" /></p> -<f:if condition="{noDocs}"> - <f:else> - <f:if condition="{openDocuments}"> - <hr class="dropdown-divider" aria-hidden="true"> - <ul class="dropdown-list" data-open-docs="{openDocuments->f:count()}"> +<p class="h4 dropdown-headline"><f:translate key="LLL:EXT:opendocs/Resources/Private/Language/locallang.xlf:toolbarItems.openDocuments.headline" /></p> +<f:if condition="{openDocuments}"> + <f:then> + <ul class="dropdown-list" data-open-docs="{openDocuments->f:count()}"> + <f:for each="{openDocuments}" as="openDocument"> <li> - <p class="h3 dropdown-headline"><f:translate key="LLL:EXT:opendocs/Resources/Private/Language/locallang.xlf:open_docs" /></p> - <a href="#" class="dropdown-item dropdown-item-action t3js-topbar-opendocs-close" - title="{f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:rm.closeAllDocs')}"> + <a href="{openDocument.uri}" class="dropdown-item dropdown-item-title t3js-open-doc" + data-pid="{openDocument.label}" + title="{openDocument.label}"> + <span class="dropdown-item-columns"> + <span class="dropdown-item-column dropdown-item-column-icon"> + <core:iconForRecord table="{openDocument.table}" row="{openDocument.record}"/> + </span> + <span class="dropdown-item-column dropdown-item-column-title"> + {openDocument.label} + </span> + </span> + </a> + <a + href="#" + class="dropdown-item dropdown-item-action t3js-topbar-opendocs-close" + data-opendocsidentifier="{openDocument.md5sum}" + title="{f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:rm.closeDoc')}: {openDocument.label}" + role="button" + > <core:icon identifier="actions-close" alternativeMarkupIdentifier="inline"/> </a> </li> - <f:for each="{openDocuments}" as="openDocument"> - <li> - <a href="{openDocument.uri}" class="dropdown-item dropdown-item-title t3js-open-doc" - data-pid="{openDocument.label}" - title="{openDocument.label}"> - <span class="dropdown-item-columns"> - <span class="dropdown-item-column dropdown-item-column-icon"> - <core:iconForRecord table="{openDocument.table}" row="{openDocument.record}"/> - </span> - <span class="dropdown-item-column dropdown-item-column-title"> - {openDocument.label} - </span> + </f:for> + </ul> + <div class="dropdown-item-text"> + <a + href="#" + class="btn btn-sm btn-default t3js-topbar-opendocs-close" + role="button" + > + <core:icon identifier="actions-close" alternativeMarkupIdentifier="inline"/> + {f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:rm.closeAllDocs')} + </a> + </div> + </f:then> + <f:else> + <p class="dropdown-item-text"><f:translate key="LLL:EXT:opendocs/Resources/Private/Language/locallang.xlf:toolbarItems.openDocuments.emptyList" /></p> + </f:else> +</f:if> + +<hr class="dropdown-divider" aria-hidden="true"> + +<p class="h4 dropdown-headline"><f:translate key="LLL:EXT:opendocs/Resources/Private/Language/locallang.xlf:toolbarItems.recentDocuments.headline" /></p> +<f:if condition="{recentDocuments}"> + <f:then> + <ul class="dropdown-list"> + <f:for each="{recentDocuments}" as="recentDocument"> + <li> + <a href="{recentDocument.uri}" class="dropdown-item t3js-open-doc" + data-pid="{recentDocument.pid}" + title="{recentDocument.label}"> + <span class="dropdown-item-columns"> + <span class="dropdown-item-column dropdown-item-column-icon"> + <core:iconForRecord table="{recentDocument.table}" row="{recentDocument.record}"/> </span> - </a> - <a href="#" class="dropdown-item dropdown-item-action t3js-topbar-opendocs-close" - data-opendocsidentifier="{openDocument.md5sum}" - title="{f:translate(key: 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:rm.closeDoc')}: {openDocument.label}"> - <core:icon identifier="actions-close" alternativeMarkupIdentifier="inline"/> - </a> - </li> - </f:for> - </ul> - </f:if> - <f:if condition="{recentDocuments}"> - <hr class="dropdown-divider" aria-hidden="true"> - <p class="h4 dropdown-headline"><f:translate key="LLL:EXT:opendocs/Resources/Private/Language/locallang.xlf:recent_docs" /></p> - <ul class="dropdown-list"> - <f:for each="{recentDocuments}" as="recentDocument"> - <li> - <a href="{recentDocument.uri}" class="dropdown-item t3js-open-doc" - data-pid="{recentDocument.pid}" - title="{recentDocument.label}"> - <span class="dropdown-item-columns"> - <span class="dropdown-item-column dropdown-item-column-icon"> - <core:iconForRecord table="{recentDocument.table}" row="{recentDocument.record}"/> - </span> - <span class="dropdown-item-column dropdown-item-column-title"> - {recentDocument.label} - </span> + <span class="dropdown-item-column dropdown-item-column-title"> + {recentDocument.label} </span> - </a> - </li> - </f:for> - </ul> - </f:if> + </span> + </a> + </li> + </f:for> + </ul> + </f:then> + <f:else> + <p class="dropdown-item-text"><f:translate key="LLL:EXT:opendocs/Resources/Private/Language/locallang.xlf:toolbarItems.recentDocuments.emptyList" /></p> </f:else> </f:if> + </html> diff --git a/typo3/sysext/workspaces/Resources/Private/Templates/ToolbarItems/DropDown.html b/typo3/sysext/workspaces/Resources/Private/Templates/ToolbarItems/DropDown.html index 04cf19f654b65cebd929c7876234b2817fa6baa4..33764f6ff0fee0b3b4edffddd83e89681ecfef7c 100644 --- a/typo3/sysext/workspaces/Resources/Private/Templates/ToolbarItems/DropDown.html +++ b/typo3/sysext/workspaces/Resources/Private/Templates/ToolbarItems/DropDown.html @@ -1,39 +1,52 @@ <html xmlns:core="http://typo3.org/ns/TYPO3/CMS/Core/ViewHelpers" data-namespace-typo3-fluid="true"> <p class="h3 dropdown-headline"><f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.workspace" /></p> -<ul class="dropdown-list"> - <f:if condition="{topItem}"> - <f:then> - <f:render section="workspaceItem" arguments="{item: topItem}" /> - </f:then> - <f:else> - <li> - <f:comment>no items on top (= no workspace to work in)</f:comment> - <p class="dropdown-item-text"> - <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_misc.xlf:bookmark_noWSfound" /> - </p> - </li> - </f:else> - </f:if> - <f:if condition="{additionalItems}"> - <f:for each="{additionalItems}" as="item"> - <f:render section="workspaceItem" arguments="{item: item}" /> - </f:for> +<p class="dropdown-item-text"> + <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.workspace.intro.text" /> + <f:if condition="{showLinkToModule}"> + <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.workspace.intro.link.description" /> + <a href="#" target="list_frame" data-module="workspaces_admin" class="link-primary t3js-workspaces-modulelink"> + <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.workspace.intro.link" /> + </a> </f:if> -</ul> - +</p> -<f:if condition="{showLinkToModule}"> - <hr class="dropdown-divider" aria-hidden="true"> - <a href="#" target="list_frame" data-module="workspaces_admin" class="dropdown-item t3js-workspaces-modulelink"> - <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_misc.xlf:bookmark_workspace" /> - </a> +<f:if condition="{topItem} || {additionalItems}"> + <f:then> + <ul class="dropdown-list"> + <f:if condition="{topItem}"> + <f:render section="workspaceItem" arguments="{item: topItem}" /> + </f:if> + <f:if condition="{additionalItems}"> + <f:for each="{additionalItems}" as="item"> + <f:render section="workspaceItem" arguments="{item: item}" /> + </f:for> + </f:if> + </ul> + </f:then> + <f:else> + <f:comment><!-- No workspace to work in --></f:comment> + <hr class="dropdown-divider" aria-hidden="true"> + <div class="dropdown-row"> + <div> + <span class="text-danger"> + <core:icon identifier="actions-exclamation-circle-alt" /> + </span> + </div> + <div> + <f:translate key="LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:toolbarItems.workspace.noWorkspaceFound" /> + </div> + </div> + </f:else> </f:if> <f:section name="workspaceItem"> <li class="t3js-workspace-item"> <a href="{item.link}" data-workspaceid="{item.workspaceId}" class="dropdown-item t3js-workspaces-switchlink {item.isActive ? 'active' : ''}"> <span class="dropdown-item-columns"> + <span class="dropdown-item-column dropdown-item-column-icon"> + <core:icon identifier="mimetypes-x-sys_workspace" size="small" /> + </span> <span class="dropdown-item-column dropdown-item-column-title"> {item.label -> f:format.htmlspecialchars()} </span>