aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorFerdinand Thiessen <opensource@fthiessen.de>2023-12-06 14:39:33 +0100
committerbackportbot-nextcloud[bot] <backportbot-nextcloud[bot]@users.noreply.github.com>2023-12-07 08:27:28 +0000
commitb82a7d6102dbae6460c7cfffff3a1eadc3041025 (patch)
tree26eb33c356283164b24b9b6fb5207d91bf54451b /lib
parent13f0badf192abc7861ee686e389ff99169ccd46d (diff)
downloadnextcloud-server-b82a7d6102dbae6460c7cfffff3a1eadc3041025.tar.gz
nextcloud-server-b82a7d6102dbae6460c7cfffff3a1eadc3041025.zip
enh(NavigationManager): Use ID as fallback for `app` property of entries
Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Diffstat (limited to 'lib')
-rw-r--r--lib/private/NavigationManager.php10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/private/NavigationManager.php b/lib/private/NavigationManager.php
index 27963b8a45d..17573d9db86 100644
--- a/lib/private/NavigationManager.php
+++ b/lib/private/NavigationManager.php
@@ -95,7 +95,10 @@ class NavigationManager implements INavigationManager {
return;
}
+ $id = $entry['id'];
+
$entry['active'] = false;
+ $entry['unread'] = $this->unreadCounters[$id] ?? 0;
if (!isset($entry['icon'])) {
$entry['icon'] = '';
}
@@ -106,9 +109,12 @@ class NavigationManager implements INavigationManager {
$entry['type'] = 'link';
}
- $id = $entry['id'];
- $entry['unread'] = $this->unreadCounters[$id] ?? 0;
if ($entry['type'] === 'link') {
+ // app might not be set when using closures, in this case try to fallback to ID
+ if (!isset($entry['app']) && $this->appManager->isEnabledForUser($id)) {
+ $entry['app'] = $id;
+ }
+
// This is the default app that will always be shown first
$entry['default'] = ($entry['app'] ?? false) === $this->defaultApp;
// Set order from user defined app order