diff --git a/srv/poe_manager/app.py b/srv/poe_manager/app.py index c9f7e4e..f1eda48 100644 --- a/srv/poe_manager/app.py +++ b/srv/poe_manager/app.py @@ -4,6 +4,7 @@ from flask_login import LoginManager, login_user, login_required, logout_user, U from flask_bcrypt import Bcrypt from cryptography.fernet import Fernet from datetime import datetime +from collections import defaultdict import sqlite3, glob, os, re app = Flask(__name__) @@ -120,6 +121,11 @@ def index(): devices = sorted(devices, key=lambda d: d[1][0].upper()) + grouped_devices = defaultdict(list) + for d in devices: + first_letter = d[1][0].upper() + grouped_devices[first_letter].append(d) + # Intervall aus DB laden c.execute("SELECT value FROM settings WHERE key='interval'") row = c.fetchone() @@ -153,7 +159,7 @@ def index(): else: status_dict[dev[0]] = "unbekannt" - return render_template("index.html", devices=devices, status=status_dict, last_seen=last_seen_dict, interval=interval) + return render_template("index.html", grouped_devices=grouped_devices, devices=devices, status=status_dict, last_seen=last_seen_dict, interval=interval) @app.route("/settings", methods=["GET", "POST"]) @login_required