Fehler Box anzeige

This commit is contained in:
Bkolb 2026-04-02 19:12:15 +02:00
parent 3f820a35bf
commit adfcf8e58e
2 changed files with 70 additions and 7 deletions

View File

@ -1,5 +1,6 @@
import logging import logging
import os import os
import re
from datetime import datetime from datetime import datetime
from logging.handlers import RotatingFileHandler from logging.handlers import RotatingFileHandler
@ -414,10 +415,49 @@ def admin_mandanten():
kontakt_email = request.form.get("kontakt_email", "").strip() kontakt_email = request.form.get("kontakt_email", "").strip()
level = request.form.get("level", "0").strip() level = request.form.get("level", "0").strip()
email_pattern = r"^[^@\s]+@[^@\s]+\.[^@\s]+$"
error_message = None
if not kuerzel:
error_message = "Kürzel ist ein Pflichtfeld."
elif not name:
error_message = "Name ist ein Pflichtfeld."
elif not kontakt_email:
error_message = "Kontakt E-Mail ist ein Pflichtfeld."
elif not re.match(email_pattern, kontakt_email):
error_message = "Bitte eine gültige Kontakt-E-Mail eingeben."
if error_message:
cur.execute("""
SELECT id, kuerzel, name, kontakt_email, level
FROM mandant
ORDER BY id
""")
mandanten = fetchall_dict(cur)
cur.close()
conn.close()
return render_template(
"admin_mandanten.html",
page_title="Admin - Mandanten",
active_page="admin",
mandanten=mandanten,
form_error=error_message,
form_values={
"kuerzel": kuerzel,
"name": name,
"kontakt_email": kontakt_email,
"level": level,
},
**get_current_user()
)
cur.execute(""" cur.execute("""
INSERT INTO mandant (kuerzel, name, kontakt_email, level) INSERT INTO mandant (kuerzel, name, kontakt_email, level)
VALUES (%s, %s, %s, %s) VALUES (%s, %s, %s, %s)
""", (kuerzel, name, kontakt_email or None, int(level or 0))) """, (kuerzel, name, kontakt_email, int(level or 0)))
conn.commit() conn.commit()
elif action == "update": elif action == "update":

View File

@ -14,26 +14,49 @@
</div> </div>
<form method="post" class="admin-grid-form" id="mandant-create-form" novalidate> <form method="post" class="admin-grid-form" id="mandant-create-form" novalidate>
{% if form_error %}
<div class="form-row-full">
<div class="error-box">{{ form_error }}</div>
</div>
{% endif %}
<input type="hidden" name="action" value="create"> <input type="hidden" name="action" value="create">
<div class="form-row"> <div class="form-row">
<label for="kuerzel">Kürzel</label> <label for="kuerzel">Kürzel</label>
<input type="text" id="kuerzel" name="kuerzel" required> <input type="text"
</div> id="kuerzel"
name="kuerzel"
value="{{ form_values.kuerzel if form_values else '' }}"
required>
</div>
<div class="form-row"> <div class="form-row">
<label for="name">Name</label> <label for="name">Name</label>
<input type="text" id="name" name="name" required> <input type="text"
id="name"
name="name"
value="{{ form_values.name if form_values else '' }}"
required>
</div> </div>
<div class="form-row"> <div class="form-row">
<label for="kontakt_email">Kontakt E-Mail</label> <label for="kontakt_email">Kontakt E-Mail</label>
<input type="email" id="kontakt_email" name="kontakt_email" required> <input type="email"
id="kontakt_email"
name="kontakt_email"
value="{{ form_values.kontakt_email if form_values else '' }}"
required>
</div> </div>
<div class="form-row"> <div class="form-row">
<label for="level">Level</label> <label for="level">Level</label>
<input type="number" id="level" name="level" value="0" min="0"> <input type="number"
id="level"
name="level"
value="{{ form_values.level if form_values else '0' }}"
min="0">
</div> </div>
<div class="form-row form-row-full"> <div class="form-row form-row-full">
@ -152,4 +175,4 @@
} }
}); });
}); });
</script> </script>