""" BAN YARO — User-Feedback per E-Mail an support@banyaro.app """ from typing import Annotated, Literal from fastapi import APIRouter, Depends from pydantic import BaseModel, Field from auth import get_current_user from mailer import send_email, email_html router = APIRouter() SUPPORT_MAIL = "support@banyaro.app" KATEGORIEN = {"bug": "🐛 Bug / Fehler", "idee": "💡 Idee / Wunsch", "lob": "🎉 Lob", "sonstiges": "💬 Sonstiges"} class FeedbackIn(BaseModel): kategorie: Literal["bug", "idee", "lob", "sonstiges"] text: Annotated[str, Field(min_length=5, max_length=2000)] @router.post("") async def submit_feedback( payload: FeedbackIn, user=Depends(get_current_user), ): kat_label = KATEGORIEN.get(payload.kategorie, payload.kategorie) username = user.get("name", "?") email = user.get("email", "") tier = user.get("subscription_tier", "standard") subject = f"[Feedback] {kat_label} von @{username}" body = f"""
Neues Feedback aus der App:
| Kategorie | {kat_label} |
| User | @{username} ({email}) |
| Tier | {tier} |