From ff2cdc1ed85d5bb1776b56b6a5b524a3ee06f2c9 Mon Sep 17 00:00:00 2001 From: AIIrondev Date: Fri, 28 Aug 2026 00:02:45 +0200 Subject: [PATCH] change --- Website/main.py | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/Website/main.py b/Website/main.py index bac5033..3cf6330 100644 --- a/Website/main.py +++ b/Website/main.py @@ -2740,6 +2740,18 @@ def my_invoices(): try: client, col = _get_collection("invoices") invoices = list(col.find({"username": session.get("username")}, {"_id": 0}).sort("created_at", -1)) + + # Beträge in Float umwandeln, da das Jinja-Template echte Zahlen erwartet + for inv in invoices: + amt = inv.get("amount_eur", 0) + if isinstance(amt, str): + try: + # Entfernt Tausenderpunkte und wandelt das deutsche Komma in einen Punkt um + amt = float(amt.replace('.', '').replace(',', '.')) + except ValueError: + amt = 0.0 + inv["amount_eur"] = amt + except PyMongoError: flash("Rechnungen konnten nicht geladen werden.", "error") finally: @@ -2753,14 +2765,24 @@ def my_invoices(): instance_requests = list(req_col.find({"username": session.get("username")}).sort("created_at", -1)) for item in instance_requests: item["id"] = str(item.get("_id")) + + # Auch hier sicherstellen, dass der Betrag ein Float ist + amt = item.get("amount_eur", 0) + if isinstance(amt, str): + try: + amt = float(amt.replace('.', '').replace(',', '.')) + except ValueError: + amt = 0.0 + item["amount_eur"] = amt + except PyMongoError: flash("Instanz-Anfragen konnten nicht geladen werden.", "error") finally: if 'req_client' in locals() and req_client: req_client.close() + return render_template("my_invoices.html", invoices=invoices, instance_requests=instance_requests) - @app.route('/my/instance', methods=['GET', 'POST']) @login_required def my_instance_management():