From 90ecc86e11adff2efa548003c05e4497e8ba3130 Mon Sep 17 00:00:00 2001 From: rganascim Date: Sat, 25 Feb 2023 09:34:21 -0300 Subject: [PATCH] Fixes #11758 - replace unsafe chars in menu label --- netbox/extras/plugins/navigation.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/netbox/extras/plugins/navigation.py b/netbox/extras/plugins/navigation.py index e667965b8..15a23d234 100644 --- a/netbox/extras/plugins/navigation.py +++ b/netbox/extras/plugins/navigation.py @@ -21,7 +21,18 @@ class PluginMenu: @property def name(self): - return self.label.replace(' ', '_') + special_chars = [ + ' ', '*', '/', '?', '>', '<', '\\', '|', '"', ':', + ';', ',', '.', '#', '+', '=', '!', '@', '$', '%', + '^', '&', '(', ')', '[', ']', '{', '}', '`', '~' + ] + new_name = '' + for char in self.label: + if char in special_chars: + new_name += '_' + else: + new_name += char + return new_name class PluginMenuItem: