diff --git a/srv/poe_manager/app.py b/srv/poe_manager/app.py index 8d5a61f..4fb13b7 100644 --- a/srv/poe_manager/app.py +++ b/srv/poe_manager/app.py @@ -231,6 +231,22 @@ def devices(): except sqlite3.IntegrityError: flash("Fehler beim Aktualisieren des Geräts!") + # ----------------------- + # Gerät aktivieren/deaktivieren + # ----------------------- + elif 'toggle_device' in request.form: + mac = request.form.get('toggle_device') + device = conn.execute("SELECT is_active, name FROM devices WHERE mac=?", (mac,)).fetchone() + if device: + new_status = 0 if device['is_active'] else 1 + conn.execute("UPDATE devices SET is_active=? WHERE mac=?", (new_status, mac)) + conn.commit() + status_text = "deaktiviert" if new_status == 0 else "aktiviert" + flash(f"Gerät '{device['name']}' wurde {status_text}.") + else: + flash("Gerät nicht gefunden!") + return redirect(url_for('devices')) + # ----------------------- # Gerät löschen # -----------------------