Closes #42 Based on @erichester76's https://github.com/ICTU/netbox_slm/pull/44 Signed-off-by: wkoot <3715211+wkoot@users.noreply.github.com> Co-authored-by: Eric Hester <eric.hester@umbrella.tech>
69 lines
2.2 KiB
Python
69 lines
2.2 KiB
Python
from django.conf import settings
|
|
|
|
from netbox.plugins import PluginMenuButton, PluginMenuItem, PluginMenu
|
|
from . import SLMConfig
|
|
|
|
slm_items = (
|
|
PluginMenuItem(
|
|
link="plugins:netbox_slm:softwareproduct_list",
|
|
link_text="Software Products",
|
|
permissions=["netbox_slm.add_softwareproduct"],
|
|
buttons=(
|
|
PluginMenuButton(
|
|
"plugins:netbox_slm:softwareproduct_add",
|
|
"Add",
|
|
"mdi mdi-plus-thick",
|
|
permissions=["netbox_slm.add_softwareproduct"],
|
|
),
|
|
),
|
|
),
|
|
PluginMenuItem(
|
|
link="plugins:netbox_slm:softwareproductversion_list",
|
|
link_text="Versions",
|
|
permissions=["netbox_slm.add_softwareproductversion"],
|
|
buttons=(
|
|
PluginMenuButton(
|
|
"plugins:netbox_slm:softwareproductversion_add",
|
|
"Add",
|
|
"mdi mdi-plus-thick",
|
|
permissions=["netbox_slm.add_softwareproductversion"],
|
|
),
|
|
),
|
|
),
|
|
PluginMenuItem(
|
|
link="plugins:netbox_slm:softwareproductinstallation_list",
|
|
link_text="Installations",
|
|
permissions=["netbox_slm.add_softwareproductinstallation"],
|
|
buttons=(
|
|
PluginMenuButton(
|
|
"plugins:netbox_slm:softwareproductinstallation_add",
|
|
"Add",
|
|
"mdi mdi-plus-thick",
|
|
permissions=["netbox_slm.add_softwareproductinstallation"],
|
|
),
|
|
),
|
|
),
|
|
PluginMenuItem(
|
|
link="plugins:netbox_slm:softwarelicense_list",
|
|
link_text="Licenses",
|
|
permissions=["netbox_slm.add_softwarelicense"],
|
|
buttons=(
|
|
PluginMenuButton(
|
|
"plugins:netbox_slm:softwarelicense_add",
|
|
"Add",
|
|
"mdi mdi-plus-thick",
|
|
permissions=["netbox_slm.add_softwarelicense"],
|
|
),
|
|
),
|
|
),
|
|
)
|
|
|
|
if settings.PLUGINS_CONFIG["netbox_slm"].get("top_level_menu") is True:
|
|
menu = PluginMenu(
|
|
label="Software Lifecycle",
|
|
groups=((SLMConfig.verbose_name, slm_items),),
|
|
icon_class="mdi mdi-content-save",
|
|
)
|
|
else:
|
|
menu_items = slm_items
|