From 70d30e95fb36f4895c2c8a1090d6ca149795bd0f Mon Sep 17 00:00:00 2001 From: Tim Eertmoed Date: Fri, 26 Sep 2025 15:22:31 +0000 Subject: [PATCH] Webinterface --- .gitignore | 1 + srv/poe_manager/templates/devices.html | 93 +++++++++++++++++++++++++ srv/poe_manager/templates/index.html | 47 +++++++++++++ srv/poe_manager/templates/login.html | 20 ++++++ srv/poe_manager/templates/logs.html | 13 ++++ srv/poe_manager/templates/settings.html | 31 +++++++++ srv/poe_manager/templates/switches.html | 69 ++++++++++++++++++ srv/poe_manager/venv/lib64 | 1 + srv/poe_manager/venv/pyvenv.cfg | 5 ++ 9 files changed, 280 insertions(+) create mode 100644 srv/poe_manager/templates/devices.html create mode 100644 srv/poe_manager/templates/index.html create mode 100644 srv/poe_manager/templates/login.html create mode 100644 srv/poe_manager/templates/logs.html create mode 100644 srv/poe_manager/templates/settings.html create mode 100644 srv/poe_manager/templates/switches.html create mode 120000 srv/poe_manager/venv/lib64 create mode 100644 srv/poe_manager/venv/pyvenv.cfg diff --git a/.gitignore b/.gitignore index 97c7290..06b58c1 100644 --- a/.gitignore +++ b/.gitignore @@ -29,6 +29,7 @@ __pycache__/ !/srv/ !/srv/poe_manager/ !/srv/poe_manager/* +!/srv/poe_manager/*/* # Optional: SQLite DB ignorieren (falls du nicht willst, dass Passwörter im Repo landen) # /srv/poe_manager/sqlite.db diff --git a/srv/poe_manager/templates/devices.html b/srv/poe_manager/templates/devices.html new file mode 100644 index 0000000..73c1e2a --- /dev/null +++ b/srv/poe_manager/templates/devices.html @@ -0,0 +1,93 @@ + + + + Devices + + + + +

Devices

+Zurück zum Dashboard + +{% with messages = get_flashed_messages() %} + {% if messages %} +
+ {% for message in messages %}{{ message }}
{% endfor %} +
+ {% endif %} +{% endwith %} + +

Prüfintervall: {{ interval }} Minuten

+ +{% if current_user.is_admin %} + +

Neues Gerät hinzufügen

+
+ +
+
+
+
+
+ +
+
+
+{% endif %} + + + + + + + + + + + {% if current_user.is_admin %}{% endif %} + + + + {% for d in devices %} + + {% if current_user.is_admin %} + + + + + + + + + + + + {% else %} + + + + + + {% endif %} + + {% endfor %} + +
MACRPI IPPortNameSwitchAktionen
+ + + + + {{ d['mac'] }}{{ d['rpi_ip'] }}{{ d['port'] }}{{ d['name'] }}{{ d['switch_hostname'] }}
+ + diff --git a/srv/poe_manager/templates/index.html b/srv/poe_manager/templates/index.html new file mode 100644 index 0000000..95fb29a --- /dev/null +++ b/srv/poe_manager/templates/index.html @@ -0,0 +1,47 @@ + + + + Device Dashboard + + + + + +

Device Dashboard

+ +
+ Live Log + Devices verwalten + Switches verwalten + Einstellungen +
+ +

Prüfintervall: {{ interval }} Minuten

+ +
+ {% for d in devices %} +
+
+
{{ d['name'] }}
+ {% if status[d['name']] == 'online' %} + Online + {% else %} + Offline + {% endif %} +
+
+ {% endfor %} +
+ + + diff --git a/srv/poe_manager/templates/login.html b/srv/poe_manager/templates/login.html new file mode 100644 index 0000000..cd65a33 --- /dev/null +++ b/srv/poe_manager/templates/login.html @@ -0,0 +1,20 @@ + + + + Login + + + +

Login

+
+ + + +
+ {% with messages = get_flashed_messages() %} + {% if messages %} +
{{ messages[0] }}
+ {% endif %} + {% endwith %} + + diff --git a/srv/poe_manager/templates/logs.html b/srv/poe_manager/templates/logs.html new file mode 100644 index 0000000..3b374d1 --- /dev/null +++ b/srv/poe_manager/templates/logs.html @@ -0,0 +1,13 @@ + + + + Live Log + + + + +

Live Log: {{ log_name }}

+ Zurück zum Dashboard +
{{ log_content }}
+ + diff --git a/srv/poe_manager/templates/settings.html b/srv/poe_manager/templates/settings.html new file mode 100644 index 0000000..ebc9910 --- /dev/null +++ b/srv/poe_manager/templates/settings.html @@ -0,0 +1,31 @@ + + + + Einstellungen + + + + +

PoE-Check Intervall

+Zurück zum Dashboard + +{% with messages = get_flashed_messages() %} + {% if messages %} +
+ {% for message in messages %}{{ message }}
{% endfor %} +
+ {% endif %} +{% endwith %} + +
+
+ + +
+
+ +
+
+ + + diff --git a/srv/poe_manager/templates/switches.html b/srv/poe_manager/templates/switches.html new file mode 100644 index 0000000..ed9cf61 --- /dev/null +++ b/srv/poe_manager/templates/switches.html @@ -0,0 +1,69 @@ + + + + Switches + + + + +

Switches

+Zurück zum Dashboard + +{% with messages = get_flashed_messages() %} + {% if messages %} +
+ {% for message in messages %}{{ message }}
{% endfor %} +
+ {% endif %} +{% endwith %} + +{% if current_user.is_admin %} + +

Neuen Switch hinzufügen

+
+ +
+
+
+
+
+
+{% endif %} + + + + + + + + + {% if current_user.is_admin %}{% endif %} + + + + {% for sw in switches %} + + {% if current_user.is_admin %} + + + + + + + + + + {% else %} + + + + {% endif %} + + {% endfor %} + +
HostnameIPUsernameAktionen
+ + + {{ sw['hostname'] }}{{ sw['ip'] }}{{ sw['username'] }}
+ + diff --git a/srv/poe_manager/venv/lib64 b/srv/poe_manager/venv/lib64 new file mode 120000 index 0000000..7951405 --- /dev/null +++ b/srv/poe_manager/venv/lib64 @@ -0,0 +1 @@ +lib \ No newline at end of file diff --git a/srv/poe_manager/venv/pyvenv.cfg b/srv/poe_manager/venv/pyvenv.cfg new file mode 100644 index 0000000..4ec94d6 --- /dev/null +++ b/srv/poe_manager/venv/pyvenv.cfg @@ -0,0 +1,5 @@ +home = /usr/bin +include-system-site-packages = false +version = 3.12.3 +executable = /usr/bin/python3.12 +command = /usr/bin/python3 -m venv /srv/poe_manager/venv