Files
MrBlake f36d6be511
CI / php-store (push) Waiting to run
CI / python-components (push) Waiting to run
feat: add NetBox plugin store
2026-08-24 20:51:25 +02:00

42 lines
1.1 KiB
Python

import sys
import types
if "netbox.plugins" not in sys.modules:
netbox = types.ModuleType("netbox")
plugins = types.ModuleType("netbox.plugins")
class PluginConfig:
def ready(self):
return None
class PluginMenu:
def __init__(self, label, groups, icon_class=None):
self.label = label
self.groups = groups
self.icon_class = icon_class
class PluginMenuItem:
def __init__(
self,
link,
link_text,
auth_required=False,
staff_only=False,
permissions=None,
buttons=None,
):
self.link = link
self.link_text = link_text
self.auth_required = auth_required
self.staff_only = staff_only
self.permissions = permissions or []
self.buttons = buttons or []
plugins.PluginConfig = PluginConfig
plugins.PluginMenu = PluginMenu
plugins.PluginMenuItem = PluginMenuItem
netbox.plugins = plugins
sys.modules["netbox"] = netbox
sys.modules["netbox.plugins"] = plugins