"feat: Update database connection in app.py and myp.db for improved performance"

This commit is contained in:
Till Tomczak 2025-05-26 13:10:50 +02:00
parent fa086b7bc7
commit 5afb5c71fb
2 changed files with 88 additions and 1 deletions

View File

@ -2396,4 +2396,91 @@ def get_database_status():
return jsonify({
"connected": False,
"error": str(e)
}), 500
}), 500
@app.route("/admin/users/add")
@login_required
def admin_add_user():
"""Zeigt das Formular zum Hinzufügen eines neuen Benutzers an."""
if not current_user.is_admin:
flash("Sie haben keine Berechtigung für den Admin-Bereich.", "error")
return redirect(url_for("index"))
return render_template("admin_add_user.html")
@app.route("/admin/users/<int:user_id>/edit")
@login_required
def admin_edit_user(user_id):
"""Zeigt das Formular zum Bearbeiten eines Benutzers an."""
if not current_user.is_admin:
flash("Sie haben keine Berechtigung für den Admin-Bereich.", "error")
return redirect(url_for("index"))
db_session = get_db_session()
try:
user = db_session.query(User).filter(User.id == user_id).first()
if not user:
flash("Benutzer nicht gefunden.", "error")
return redirect(url_for("admin_page", tab="users"))
return render_template("admin_edit_user.html", user=user)
finally:
db_session.close()
@app.route("/admin/printers/add")
@login_required
def admin_add_printer():
"""Zeigt das Formular zum Hinzufügen eines neuen Druckers an."""
if not current_user.is_admin:
flash("Sie haben keine Berechtigung für den Admin-Bereich.", "error")
return redirect(url_for("index"))
return render_template("admin_add_printer.html")
@app.route("/admin/printers/<int:printer_id>/manage")
@login_required
def admin_manage_printer(printer_id):
"""Zeigt die Drucker-Verwaltungsseite an."""
if not current_user.is_admin:
flash("Sie haben keine Berechtigung für den Admin-Bereich.", "error")
return redirect(url_for("index"))
db_session = get_db_session()
try:
printer = db_session.query(Printer).filter(Printer.id == printer_id).first()
if not printer:
flash("Drucker nicht gefunden.", "error")
return redirect(url_for("admin_page", tab="printers"))
return render_template("admin_manage_printer.html", printer=printer)
finally:
db_session.close()
@app.route("/admin/printers/<int:printer_id>/settings")
@login_required
def admin_printer_settings(printer_id):
"""Zeigt die Drucker-Einstellungsseite an."""
if not current_user.is_admin:
flash("Sie haben keine Berechtigung für den Admin-Bereich.", "error")
return redirect(url_for("index"))
db_session = get_db_session()
try:
printer = db_session.query(Printer).filter(Printer.id == printer_id).first()
if not printer:
flash("Drucker nicht gefunden.", "error")
return redirect(url_for("admin_page", tab="printers"))
return render_template("admin_printer_settings.html", printer=printer)
finally:
db_session.close()
@app.route("/admin/settings")
@login_required
def admin_settings():
"""Zeigt die Admin-Einstellungsseite an."""
if not current_user.is_admin:
flash("Sie haben keine Berechtigung für den Admin-Bereich.", "error")
return redirect(url_for("index"))
return render_template("admin_settings.html")

Binary file not shown.