Refactor: Email statt Username als Anzeige-Identifier
- Header zeigt volle Email statt Username - Lagen-Karten/Sidebar zeigen Email-Prefix (vor dem @) als Ersteller - Feedback-Emails nutzen Email-Prefix statt Username - Login/Notification-Emails nutzen Email-Prefix als Anrede - DB-Queries holen email statt username für Ersteller-Anzeige Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Dieser Commit ist enthalten in:
@@ -63,12 +63,12 @@ async def send_feedback(
|
||||
detail="E-Mail-Versand nicht verfuegbar.",
|
||||
)
|
||||
|
||||
username = current_user["username"]
|
||||
email = current_user.get("email", "")
|
||||
display_name = email.split("@")[0] if email else "Unbekannt"
|
||||
category_label = CATEGORY_LABELS.get(data.category, data.category)
|
||||
message_escaped = html.escape(data.message)
|
||||
|
||||
subject = f"[AegisSight Feedback] {category_label} von {username}"
|
||||
subject = f"[AegisSight Feedback] {category_label} von {display_name}"
|
||||
html_body = f"""\
|
||||
<div style="font-family:Arial,sans-serif;max-width:600px;margin:0 auto;">
|
||||
<div style="background:#151D2E;color:#E8ECF4;padding:20px;border-radius:8px 8px 0 0;">
|
||||
@@ -77,7 +77,7 @@ async def send_feedback(
|
||||
<div style="background:#1A2440;color:#E8ECF4;padding:20px;border-radius:0 0 8px 8px;">
|
||||
<table style="border-collapse:collapse;">
|
||||
<tr><td style="color:#8896AB;padding:4px 16px 4px 0;">Kategorie:</td><td><strong>{category_label}</strong></td></tr>
|
||||
<tr><td style="color:#8896AB;padding:4px 16px 4px 0;">Nutzer:</td><td>{html.escape(username)}</td></tr>
|
||||
<tr><td style="color:#8896AB;padding:4px 16px 4px 0;">Nutzer:</td><td>{html.escape(display_name)}</td></tr>
|
||||
<tr><td style="color:#8896AB;padding:4px 16px 4px 0;">E-Mail:</td><td>{html.escape(email) if email else "nicht hinterlegt"}</td></tr>
|
||||
</table>
|
||||
<hr style="border:none;border-top:1px solid #1E2D45;margin:16px 0;">
|
||||
@@ -92,7 +92,7 @@ async def send_feedback(
|
||||
if email:
|
||||
msg["Reply-To"] = email
|
||||
|
||||
text_fallback = f"Feedback von {username} ({category_label}):\n\n{data.message}"
|
||||
text_fallback = f"Feedback von {display_name} ({category_label}):\n\n{data.message}"
|
||||
msg.attach(MIMEText(text_fallback, "plain", "utf-8"))
|
||||
msg.attach(MIMEText(html_body, "html", "utf-8"))
|
||||
|
||||
@@ -106,7 +106,7 @@ async def send_feedback(
|
||||
start_tls=SMTP_USE_TLS,
|
||||
)
|
||||
_user_timestamps[user_id].append(now)
|
||||
logger.info(f"Feedback von {username} ({category_label}) gesendet")
|
||||
logger.info(f"Feedback von {display_name} ({category_label}) gesendet")
|
||||
except Exception as e:
|
||||
logger.error(f"Feedback-E-Mail fehlgeschlagen: {e}")
|
||||
raise HTTPException(
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren