From cfe2f76eba6f73af19efb3e30f4d4f96d4b93b86 Mon Sep 17 00:00:00 2001
From: Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de>
Date: Tue, 27 Aug 2024 09:34:22 +0000
Subject: [PATCH] drop special handling of admin navigation, fixes #4491

Closes #4491

Merge request studip/studip!3321
---
 lib/modules/CoreAdmin.php           | 10 ++++------
 lib/navigation/CourseNavigation.php | 11 +----------
 2 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/lib/modules/CoreAdmin.php b/lib/modules/CoreAdmin.php
index 9cb09419153..8941cf24f06 100644
--- a/lib/modules/CoreAdmin.php
+++ b/lib/modules/CoreAdmin.php
@@ -137,15 +137,13 @@ class CoreAdmin extends CorePlugin implements StudipModule
     public function getMetadata()
     {
         return [
-            'displayname' => _('Verwaltung')
+            'displayname' => _('Verwaltung'),
+            'summary' => _('Verwaltung der Grunddaten, Zugangsberechtigungen und sonstigen Einstellungen'),
+            'icon' => Icon::create('admin', Icon::ROLE_INFO),
+            'icon_clickable' => Icon::create('admin')
         ];
     }
 
-    public function isActivatableForContext(Range $context)
-    {
-        return false;
-    }
-
     public function getInfoTemplate($course_id)
     {
         // TODO: Implement getInfoTemplate() method.
diff --git a/lib/navigation/CourseNavigation.php b/lib/navigation/CourseNavigation.php
index 59ca2b64d2c..f5d7f71d219 100644
--- a/lib/navigation/CourseNavigation.php
+++ b/lib/navigation/CourseNavigation.php
@@ -60,11 +60,7 @@ class CourseNavigation extends Navigation
         $where = null;
 
         foreach ($this->range->tools as $tool) {
-            if (
-                $found
-                && $tool->metadata['navigation']
-                && $tool->metadata['navigation'] !== 'admin'
-            ) {
+            if ($found && $tool->metadata['navigation']) {
                 $where = $tool->metadata['navigation'];
                 break;
             }
@@ -75,11 +71,6 @@ class CourseNavigation extends Navigation
             }
         }
 
-        // always insert admin module in first position
-        if (key($navigations) === 'admin') {
-            $where = key($this->getSubNavigation());
-        }
-
         foreach ($navigations as $key => $nav) {
             if (
                 $this->range instanceof Institute
-- 
GitLab