From 150cb772fe519404857f48e894737f0570c4bc56 Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Mon, 21 Nov 2022 08:38:44 -0500 Subject: [PATCH] Fixes #10984: Fix navigation menu expansion for plugin menus comprising multiple words --- docs/release-notes/version-3.4.md | 1 + netbox/extras/plugins/navigation.py | 4 ++++ netbox/extras/tests/dummy_plugin/navigation.py | 2 +- netbox/netbox/navigation/__init__.py | 4 ++++ netbox/utilities/templates/navigation/menu.html | 4 ++-- 5 files changed, 12 insertions(+), 3 deletions(-) diff --git a/docs/release-notes/version-3.4.md b/docs/release-notes/version-3.4.md index 94939ff5e..35f938afd 100644 --- a/docs/release-notes/version-3.4.md +++ b/docs/release-notes/version-3.4.md @@ -14,6 +14,7 @@ * [#10973](https://github.com/netbox-community/netbox/issues/10973) - Fix device links in VDC table * [#10980](https://github.com/netbox-community/netbox/issues/10980) - Fix view tabs for plugin objects * [#10982](https://github.com/netbox-community/netbox/issues/10982) - Catch `NoReverseMatch` exception when rendering tabs with no registered URL +* [#10984](https://github.com/netbox-community/netbox/issues/10984) - Fix navigation menu expansion for plugin menus comprising multiple words ## v3.4-beta1 (2022-11-16) diff --git a/netbox/extras/plugins/navigation.py b/netbox/extras/plugins/navigation.py index 193be6cfb..e667965b8 100644 --- a/netbox/extras/plugins/navigation.py +++ b/netbox/extras/plugins/navigation.py @@ -19,6 +19,10 @@ class PluginMenu: if icon_class is not None: self.icon_class = icon_class + @property + def name(self): + return self.label.replace(' ', '_') + class PluginMenuItem: """ diff --git a/netbox/extras/tests/dummy_plugin/navigation.py b/netbox/extras/tests/dummy_plugin/navigation.py index 8aa161520..a9157b368 100644 --- a/netbox/extras/tests/dummy_plugin/navigation.py +++ b/netbox/extras/tests/dummy_plugin/navigation.py @@ -26,7 +26,7 @@ items = ( ) menu = PluginMenu( - label=_('Dummy'), + label=_('Dummy Plugin'), groups=(('Group 1', items),), ) menu_items = items diff --git a/netbox/netbox/navigation/__init__.py b/netbox/netbox/navigation/__init__.py index 7b5729843..a05b1c495 100644 --- a/netbox/netbox/navigation/__init__.py +++ b/netbox/netbox/navigation/__init__.py @@ -51,6 +51,10 @@ class Menu: icon_class: str groups: Sequence[MenuGroup] + @property + def name(self): + return self.label.replace(' ', '_') + # # Utility functions diff --git a/netbox/utilities/templates/navigation/menu.html b/netbox/utilities/templates/navigation/menu.html index 33a476081..f7e3f3dcb 100644 --- a/netbox/utilities/templates/navigation/menu.html +++ b/netbox/utilities/templates/navigation/menu.html @@ -4,12 +4,12 @@ {% for menu, groups in nav_items %}