"feat: Enhanced admin panel templates for printer management"
This commit is contained in:
@@ -1166,10 +1166,9 @@ def create_printer():
|
||||
@app.route("/api/printers/<int:printer_id>", methods=["DELETE"])
|
||||
@login_required
|
||||
def delete_printer(printer_id):
|
||||
"""Delete a printer (admin only)"""
|
||||
"""Löscht einen Drucker (nur für Administratoren)"""
|
||||
if not current_user.is_admin:
|
||||
flash("Sie haben keine Berechtigung, um Drucker zu löschen.", "error")
|
||||
return redirect(url_for('admin_page', tab='printers'))
|
||||
return jsonify({"error": "Nur Administratoren können Drucker löschen"}), 403
|
||||
|
||||
db_session = get_db_session()
|
||||
try:
|
||||
@@ -1177,23 +1176,20 @@ def delete_printer(printer_id):
|
||||
|
||||
if not printer:
|
||||
db_session.close()
|
||||
flash("Drucker nicht gefunden.", "error")
|
||||
return redirect(url_for('admin_page', tab='printers'))
|
||||
return jsonify({"error": "Drucker nicht gefunden"}), 404
|
||||
|
||||
printer_name = printer.name # Save for later logging
|
||||
printer_name = printer.name # Für Logging speichern
|
||||
db_session.delete(printer)
|
||||
db_session.commit()
|
||||
db_session.close()
|
||||
|
||||
app_logger.info(f"Printer deleted: {printer_name} (ID: {printer_id})")
|
||||
flash(f"Drucker {printer_name} wurde erfolgreich gelöscht.", "success")
|
||||
return redirect(url_for('admin_page', tab='printers'))
|
||||
printers_logger.info(f"Drucker {printer_name} (ID: {printer_id}) wurde von {current_user.username} gelöscht")
|
||||
return jsonify({"success": True, "message": f"Drucker {printer_name} wurde erfolgreich gelöscht"}), 200
|
||||
except Exception as e:
|
||||
db_session.rollback()
|
||||
db_session.close()
|
||||
app_logger.error(f"Error deleting printer: {str(e)}")
|
||||
flash(f"Fehler beim Löschen des Druckers: {str(e)}", "error")
|
||||
return redirect(url_for('admin_page', tab='printers'))
|
||||
printers_logger.error(f"Fehler beim Löschen des Druckers {printer_id}: {str(e)}")
|
||||
return jsonify({"error": f"Fehler beim Löschen des Druckers: {str(e)}"}), 500
|
||||
|
||||
@app.route("/api/stats", methods=["GET"])
|
||||
@login_required
|
||||
|
Reference in New Issue
Block a user