Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions assets/components/navbar.php
Original file line number Diff line number Diff line change
Expand Up @@ -1475,14 +1475,20 @@
</div>
<?php endif; ?>

<!-- Protokolle -->
<!-- Protokolle — nur zeigen, wenn mindestens ein Protokoll-Plugin aktiv ist -->
<?php
$pluginNav = app(\App\Plugins\PluginLoader::class);
$hasProtocolPlugin = $pluginNav->isActive('enotf')
|| $pluginNav->isActive('firetab')
|| ($pluginNav->isActive('manv-board') && Permissions::check(['admin', 'mci.manage']));
?>
<?php if ($hasProtocolPlugin): ?>
<a href="#" class="sidebar-link sidebar-toggle" data-page="protokolle" data-menu="protokolle">
<i class="fa-solid fa-file-medical"></i><span>Protokolle</span>
<i class="fa-solid fa-chevron-down sidebar-chevron"></i>
</a>
<div class="sidebar-submenu" data-submenu="protokolle">
<div class="sidebar-submenu-inner">
<?php $pluginNav = app(\App\Plugins\PluginLoader::class); ?>
<?php if ($pluginNav->isActive('enotf')): ?>
<span class="sidebar-section-title" data-section="enotf">eNOTF</span>
<a href="<?= BASE_PATH ?>enotf/" target="_blank" class="sidebar-sublink">eNOTF öffnen <i class="fa-solid fa-arrow-up-right-from-square" style="font-size:0.6rem;opacity:0.5;margin-left:0.25rem"></i></a>
Expand All @@ -1505,6 +1511,7 @@
<?php endif; ?>
</div>
</div>
<?php endif; ?>

<!-- Lexikon (Wissensdatenbank-Plugin) -->
<?php if (app(\App\Plugins\PluginLoader::class)->isActive('knowledge-base')): ?>
Expand Down
8 changes: 8 additions & 0 deletions src/Plugins/PluginLoader.php
Original file line number Diff line number Diff line change
Expand Up @@ -296,6 +296,14 @@ public function mergeNavigation(array $config): array
}
}

// Rail-Einträge, die nur als Merge-Anker dienen (keine eigenen
// Sections, kein eigener Link), verschwinden, wenn kein aktives
// Plugin etwas beigesteuert hat — sonst bleibt z.B. „Protokolle"
// als toter Eintrag stehen, wenn alle Protokoll-Plugins aus sind.
$rail = array_values(array_filter($rail, static function ($entry): bool {
return is_array($entry) && (!empty($entry['sections']) || !empty($entry['href']));
}));

$config['rail'] = $rail;
return $config;
}
Expand Down
Loading