Metadata-Version: 2.4
Name: netbox-dynamicmenu
Version: 0.1.0
Summary: NetBox plugin for rendering a configurable dynamic menu.
Author: wÖrker Codes
Requires-Python: >=3.10
Description-Content-Type: text/markdown

# py-netbox-dynamicmenu

Dieses Projekt ist als NetBox-Plugin vorbereitet und rendert ein konfigurierbares Menue ohne Anpassungen an NetBox-Templates direkt ueber eine `PluginTemplateExtension` in der Navbar.

## Aktueller Stand

- Datenmodell fuer frei definierbare Menueeintraege vorhanden
- Darstellung ohne manuelle Template-Anpassung an NetBox umgesetzt
- Plugin-Menueeintrag unter `Plugins` fuer die native Verwaltung vorhanden
- Batch fuer `fetch` plus `push` vorhanden: `git_push_origin.bat`

## Installation

Das Plugin im NetBox-Venv installierbar machen:

```bash
pip install -e .
```

In `configuration.py` aktivieren:

```python
PLUGINS = [
    "netbox_dynamic_menu",
]

PLUGINS_CONFIG = {
    "netbox_dynamic_menu": {
        "menu_label": "Dynamic Menu",
    }
}
```

Danach die Migrationen anwenden:

```bash
python manage.py migrate
```

## Verwaltung

Die Eintraege koennen ueber `Plugins > Dynamic Menu > Menu Items` innerhalb von NetBox angelegt, bearbeitet und geloescht werden.

## Legacy-Hinweis

Der fruehere Ansatz ueber `{% load dynamic_menu %}` und ein manuelles Einbinden in Base- oder Sidebar-Templates ist weiterhin als Hilfsfunktion vorhanden, wird fuer NetBox aber nicht mehr empfohlen.

## Berechtigungen

`required_permission` muss als vollstaendiger Django-Permission-Name gepflegt werden, zum Beispiel:

```text
dcim.view_site
extras.view_tag
netbox_dynamic_menu.view_menuitem
```
