Fix PayPal billing flow and mobile admin UX
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled

This commit is contained in:
Codex Agent
2026-02-05 10:19:29 +01:00
parent c43327af74
commit 0d7a861875
39 changed files with 1630 additions and 253 deletions

View File

@@ -88,6 +88,13 @@ return [
'limits_title' => 'Ihre Paketdetails',
'invoice_title' => 'Rechnung',
'invoice_link' => 'Rechnung öffnen',
'invoice_seller_label' => 'Anbieter',
'invoice_customer_label' => 'Kunde',
'invoice_item_label' => 'Leistung',
'invoice_type_label' => 'Typ',
'invoice_tax_label' => 'Steuer',
'invoice_total_label' => 'Gesamt',
'invoice_footer' => 'Dieser Beleg wurde automatisch von Fotospiel erstellt.',
'cta' => 'Zum Event-Admin',
'provider' => [
'lemonsqueezy' => 'PayPal',

View File

@@ -469,9 +469,9 @@
"secure_payment_desc": "Sichere Zahlung ueber PayPal.",
"lemonsqueezy_intro": "Starte den PayPal-Checkout direkt hier im Wizard ganz ohne Seitenwechsel.",
"guided_title": "Sichere Zahlung mit PayPal",
"guided_body": "Bezahle schnell und sicher mit PayPal. Dein Paket wird nach der Bestaetigung sofort freigeschaltet.",
"guided_body": "Bezahle schnell und sicher mit PayPal. Es oeffnet sich ein PayPal-Fenster kehre danach hierher zurueck.",
"lemonsqueezy_partner": "Powered by PayPal",
"guided_cta_hint": "Sicher abgewickelt ueber PayPal",
"guided_cta_hint": "Zahlung in PayPal abschliessen und hierher zurueckkehren.",
"lemonsqueezy_preparing": "PayPal-Checkout wird vorbereitet...",
"lemonsqueezy_overlay_ready": "Der PayPal-Checkout läuft jetzt in einem Overlay. Schließe die Zahlung dort ab und kehre anschließend hierher zurück.",
"lemonsqueezy_ready": "PayPal-Checkout wurde in einem neuen Tab geöffnet. Schließe die Zahlung dort ab und kehre dann hierher zurück.",
@@ -482,11 +482,88 @@
"pay_with_lemonsqueezy": "Weiter mit PayPal",
"paypal_partner": "Powered by PayPal",
"paypal_preparing": "PayPal-Checkout wird vorbereitet...",
"paypal_ready": "PayPal-Checkout ist bereit. Schließe die Zahlung ab, um fortzufahren.",
"paypal_ready": "PayPal-Checkout ist bereit. Schliesse die Zahlung in PayPal ab und kehre hierher zurueck.",
"paypal_error": "Der PayPal-Checkout konnte nicht gestartet werden. Bitte versuche es erneut.",
"paypal_not_configured": "PayPal ist noch nicht konfiguriert. Bitte kontaktiere den Support.",
"paypal_cancelled": "PayPal-Checkout wurde abgebrochen.",
"paypal_disclaimer": "Zahlungen werden sicher über PayPal verarbeitet. Du erhältst im Anschluss eine Bestätigung."
"paypal_cancelled": "PayPal-Checkout wurde abgebrochen. Du kannst es unten erneut versuchen.",
"paypal_disclaimer": "Zahlungen werden sicher über PayPal verarbeitet. Du erhältst im Anschluss eine Bestätigung.",
"resume_paypal": "Weiter in PayPal",
"resume_hint": "Falls PayPal nicht geoeffnet wurde oder geschlossen wurde, hier im neuen Tab fortsetzen."
},
"confirmation_step": {
"title": "Bestätigung",
"subtitle": "Alles erledigt!",
"description": "Dein Paket ist aktiviert. Prüfe deine E-Mails für Details.",
"welcome": "Danke, dass du die Fotospiel App gewählt hast!",
"package_summary": "Dein Paket <strong>{name}</strong> ist jetzt freigeschaltet. Du kannst sofort mit der Einrichtung loslegen.",
"email_followup": "Wir haben dir gerade alle Details per E-Mail geschickt inklusive Rechnung und den nächsten Schritten.",
"hero_badge": "Checkout abgeschlossen",
"hero_title": "Weiter geht's im Marketing-Dashboard",
"hero_body": "Wir haben deinen Zugang aktiviert und synchronisieren PayPal. Mit diesen Aufgaben startest du direkt durch.",
"hero_next": "Nutze den Button unten, um in deinen Kundenbereich zu wechseln diese Übersicht kannst du jederzeit erneut öffnen.",
"status_title": "Bestellstatus",
"status_subtitle": "Wir schließen die Aktivierung ab und synchronisieren dein Konto.",
"status_state": {
"processing": "Wird bestätigt",
"completed": "Bestätigt",
"failed": "Aktion nötig",
"action_required": "Aktion erforderlich"
},
"status_body_processing": "Wir synchronisieren dein Konto mit PayPal. Das kann einen Moment dauern.",
"status_body_completed": "Alles ist bereit. Dein Konto ist vollständig freigeschaltet.",
"status_body_failed": "Wir konnten den Kauf noch nicht bestätigen. Bitte prüfe den Status erneut oder kontaktiere den Support.",
"status_body_action_required": "PayPal benoetigt noch eine kurze Bestaetigung. Schliesse den Checkout ab, um dein Paket zu aktivieren.",
"status_manual_hint": "Dauert es zu lange? Du kannst den Status erneut prüfen oder die Seite aktualisieren.",
"status_retry": "Status prüfen",
"status_refresh": "Seite aktualisieren",
"status_action_hint": "Wir benoetigen noch deine PayPal-Bestaetigung, bevor wir dein Paket aktivieren koennen.",
"status_action_button": "PayPal-Checkout fortsetzen",
"status_action_back": "Zurueck zur Zahlung",
"status_failed_hint": "Die Zahlung wurde nicht abgeschlossen. Du kannst den Checkout erneut starten.",
"status_failed_back": "Zurueck zur Zahlung",
"status_items": {
"payment": {
"title": "Zahlung bestätigt",
"body": "Deine PayPal-Zahlung war erfolgreich."
},
"email": {
"title": "Beleg versendet",
"body": "Die Bestätigungsmail ist unterwegs."
},
"access": {
"title": "Zugang freigeschaltet",
"body": "Dashboard und PWA stehen bereit."
}
},
"onboarding_title": "Vorschau auf deine Onboarding-Schritte",
"onboarding_subtitle": "Diese Aufgaben erwarten dich direkt nach dem Login.",
"onboarding_badge": "Nächste Schritte",
"onboarding_items": {
"event": {
"title": "Erstes Event anlegen",
"body": "Titel, Datum und Highlights festlegen alles bleibt anpassbar."
},
"invites": {
"title": "QR-Einladungen aktivieren",
"body": "Teile deinen Event-QR-Code oder den Shortcut-Link mit Gästen."
},
"tasks": {
"title": "Fotoaufgaben planen",
"body": "Nutze Vorlagen oder füge eigene kreative Aufgaben hinzu."
}
},
"control_center_title": "Event Control Center (PWA)",
"control_center_body": "Alle Live-Aufgaben erledigst du später im Control Center optimiert für Mobilgeräte und offlinefähig.",
"control_center_hint": "Installiere die PWA direkt aus dem Dashboard.",
"package_title": "Dein Paket",
"package_body": "Dein Paket ist aktiviert und sofort einsatzbereit.",
"package_label": "Aktiviertes Paket",
"actions_title": "Nächste Schritte",
"actions_body": "Zum Adminbereich wechseln oder Profildaten prüfen.",
"package_activated": "Ihr Paket '{name}' ist aktiviert.",
"email_sent": "Wir haben Ihnen eine Bestätigungs-E-Mail gesendet.",
"open_profile": "Profil öffnen",
"to_admin": "Zum Admin-Bereich"
}
}
}