+ {!inlineActive && (
+
+
+
+
+
+
{t('checkout.payment_step.guided_title')}
+
{t('checkout.payment_step.guided_body')}
+
+
+
+
+
+
+
+
+
+
+ {t('checkout.payment_step.guided_cta_hint')}
+
+
+
+
+ )}
+
)}
@@ -586,7 +658,7 @@ export const PaymentStep: React.FC = () => {
)}
-
+
{t('checkout.payment_step.paddle_disclaimer')}
diff --git a/resources/lang/de/auth.json b/resources/lang/de/auth.json
index 4423b91..cc575a5 100644
--- a/resources/lang/de/auth.json
+++ b/resources/lang/de/auth.json
@@ -23,6 +23,8 @@
"description": "Melde dich mit deinem Fotospiel-Zugang an und steuere deine Events zentral in einem Dashboard.",
"brand": "Die Fotospiel App",
"logo_alt": "Logo Die Fotospiel App",
+ "identifier": "E-Mail oder Username",
+ "identifier_placeholder": "z. B. name@beispiel.de oder hochzeit_julia",
"username_or_email": "Username oder E-Mail",
"email": "E-Mail-Adresse",
"email_placeholder": "ihre@email.de",
@@ -49,7 +51,16 @@
"address": "Adresse",
"phone": "Telefonnummer",
"privacy_consent": "Ich stimme der Datenschutzerklärung zu und akzeptiere die Verarbeitung meiner persönlichen Daten.",
- "submit": "Registrieren"
+ "privacy_policy_link": "Datenschutzerklärung",
+ "submit": "Registrieren",
+ "first_name_placeholder": "Vorname",
+ "last_name_placeholder": "Nachname",
+ "email_placeholder": "beispiel@email.de",
+ "address_placeholder": "Straße Hausnummer, PLZ Ort",
+ "phone_placeholder": "+49 170 1234567",
+ "username_placeholder": "z. B. hochzeit_julia",
+ "password_placeholder": "Mindestens 8 Zeichen",
+ "password_confirmation_placeholder": "Passwort erneut eingeben"
},
"verification": {
"notice": "Bitte bestätigen Sie Ihre E-Mail-Adresse.",
diff --git a/resources/lang/de/dashboard.php b/resources/lang/de/dashboard.php
new file mode 100644
index 0000000..55b2433
--- /dev/null
+++ b/resources/lang/de/dashboard.php
@@ -0,0 +1,168 @@
+ [
+ 'group_label' => 'Kundenbereich',
+ ],
+ 'hero' => [
+ 'badge' => 'Kundenbereich',
+ 'title' => 'Willkommen zurück, :name!',
+ 'subtitle' => 'Dein Überblick über Pakete, Rechnungen und Fortschritt – für alle Details öffne die Admin-App.',
+ 'description' => 'Nutze das Dashboard für Überblick, Abrechnung und Insights – die Admin-App begleitet dich bei allen operativen Aufgaben vor Ort.',
+ ],
+ 'language_switcher' => [
+ 'label' => 'Sprache',
+ 'change' => 'Sprache wechseln',
+ ],
+ 'email_verification' => [
+ 'title' => 'Bitte bestätige deine E-Mail-Adresse',
+ 'description' => 'Du kannst alle Funktionen erst vollständig nutzen, sobald deine E-Mail-Adresse bestätigt ist. Prüfe dein Postfach oder fordere einen neuen Link an.',
+ 'cta' => 'Link erneut senden',
+ 'cta_pending' => 'Sende...',
+ 'success' => 'Wir haben dir gerade einen neuen Bestätigungslink geschickt.',
+ ],
+ 'stats' => [
+ 'active_events' => [
+ 'label' => 'Aktive Events',
+ 'description_positive' => 'Events sind live und für Gäste sichtbar.',
+ 'description_zero' => 'Noch kein Event veröffentlicht – starte heute!',
+ ],
+ 'upcoming_events' => [
+ 'label' => 'Bevorstehende Events',
+ 'description_positive' => 'Planung läuft – behalte Checklisten und Aufgaben im Blick.',
+ 'description_zero' => 'Lass dich vom Assistenten beim Planen unterstützen.',
+ ],
+ 'new_photos' => [
+ 'label' => 'Neue Fotos (7 Tage)',
+ 'description_positive' => 'Frisch eingetroffene Erinnerungen deiner Gäste.',
+ 'description_zero' => 'Sammle erste Uploads über QR-Code oder Direktlink.',
+ ],
+ 'task_progress' => [
+ 'label' => 'Event-Checkliste',
+ 'description_positive' => 'Starker Fortschritt! Halte deine Aufgabenliste aktuell.',
+ 'description_zero' => 'Nutze Aufgaben und Vorlagen für einen strukturierten Ablauf.',
+ 'note' => ':value% deiner Event-Checkliste erledigt.',
+ ],
+ ],
+ 'spotlight' => [
+ 'title' => 'Admin-App als Schaltzentrale',
+ 'description' => 'Events planen, Uploads freigeben, Gäste begleiten – mobil und in Echtzeit.',
+ 'cta' => 'Admin-App öffnen',
+ 'items' => [
+ 'live' => [
+ 'title' => 'Live auf dem Event',
+ 'description' => 'Moderation der Uploads, Freigaben & Push-Updates jederzeit griffbereit.',
+ ],
+ 'mobile' => [
+ 'title' => 'Optimiert für mobile Einsätze',
+ 'description' => 'PWA heute, native Apps morgen – ein Zugang für das ganze Team.',
+ ],
+ 'overview' => [
+ 'title' => 'Dashboard als Überblick',
+ 'description' => 'Pakete, Rechnungen und Fortschritt siehst du weiterhin hier im Webportal.',
+ ],
+ ],
+ ],
+ 'onboarding' => [
+ 'card' => [
+ 'title' => 'Dein Start in fünf Schritten',
+ 'description' => 'Bearbeite die Schritte in der Admin-App – das Dashboard zeigt dir den Status.',
+ 'completed' => 'Alle Schritte abgeschlossen – großartig! Du kannst jederzeit zur Admin-App wechseln.',
+ 'cta_fallback' => 'Jetzt starten',
+ ],
+ 'admin_app' => [
+ 'title' => 'Admin-App öffnen',
+ 'description' => 'Verwalte Events, Uploads und Gäste direkt in der Admin-App. Die mobile Oberfläche ist für Live-Einsätze optimiert.',
+ 'cta' => 'Admin-App starten',
+ ],
+ 'event_setup' => [
+ 'title' => 'Erstes Event vorbereiten',
+ 'description' => 'Lege in der Admin-App Name, Datum und Aufgaben fest. So wissen Gäste, welche Fotos ihr euch wünscht.',
+ 'cta' => 'Event anlegen',
+ ],
+ 'invite_guests' => [
+ 'title' => 'Gäste einladen',
+ 'description' => 'Teile QR-Codes oder Links, damit Gäste direkt mit dem Hochladen beginnen können.',
+ 'cta' => 'QR-Links öffnen',
+ ],
+ 'collect_photos' => [
+ 'title' => 'Erste Fotos einsammeln',
+ 'description' => 'Sobald die ersten Uploads eintrudeln, erscheint alles in eurer Galerie. Moderation und Freigaben laufen in der Admin-App.',
+ 'cta' => 'Uploads prüfen',
+ ],
+ 'branding' => [
+ 'title' => 'Branding & Aufgaben verfeinern',
+ 'description' => 'Passt Farbwelt und Aufgabenpakete an euren Anlass an – so fühlt sich alles wie aus einem Guss an.',
+ 'cta' => 'Branding öffnen',
+ ],
+ ],
+ 'events' => [
+ 'card' => [
+ 'title' => 'Bevorstehende Events',
+ 'description' => 'Status, Uploads und Aufgaben deiner nächsten Events im Überblick.',
+ 'badge' => [
+ 'plural' => ':count geplant',
+ 'empty' => 'Noch kein Event geplant',
+ ],
+ 'empty' => 'Plane dein erstes Event und begleite den gesamten Ablauf – vom Briefing bis zur Nachbereitung – direkt in der Admin-App.',
+ ],
+ 'status' => [
+ 'live' => 'Live',
+ 'upcoming' => 'In Vorbereitung',
+ ],
+ 'badges' => [
+ 'photos' => 'Fotos',
+ 'tasks' => 'Aufgaben',
+ 'links' => 'Links',
+ ],
+ ],
+ 'cards_section' => [
+ 'package' => [
+ 'title' => 'Aktuelles Paket',
+ 'description' => 'Behalte Laufzeiten und verfügbaren Umfang stets im Blick.',
+ 'remaining' => ':count Events',
+ 'expires_at' => 'Läuft ab',
+ 'price' => 'Preis',
+ 'latest' => 'Zuletzt gebucht am :date via :provider.',
+ 'empty' => 'Noch kein aktives Paket.',
+ 'empty_cta' => 'Jetzt Paket auswählen',
+ 'empty_suffix' => 'und anschließend in der Admin-App Events anlegen.',
+ ],
+ 'purchases' => [
+ 'title' => 'Aktuelle Buchungen',
+ 'description' => 'Verfolge deine gebuchten Pakete und Erweiterungen.',
+ 'badge' => ':count Einträge',
+ 'empty' => 'Noch keine Buchungen sichtbar. Starte jetzt und sichere dir dein erstes Kontingent.',
+ 'table' => [
+ 'package' => 'Paket',
+ 'type' => 'Typ',
+ 'provider' => 'Anbieter',
+ 'date' => 'Datum',
+ 'price' => 'Preis',
+ ],
+ ],
+ 'quick_actions' => [
+ 'title' => 'Schnellzugriff',
+ 'description' => 'Alles Wichtige für den nächsten Schritt nur einen Klick entfernt.',
+ 'cta' => 'Weiter',
+ 'items' => [
+ 'tenant_admin' => [
+ 'label' => 'Event-Admin öffnen',
+ 'description' => 'Detaillierte Eventverwaltung, Moderation und Live-Features.',
+ ],
+ 'profile' => [
+ 'label' => 'Profil verwalten',
+ 'description' => 'Kontaktinformationen, Sprache und E-Mail-Adresse anpassen.',
+ ],
+ 'password' => [
+ 'label' => 'Passwort aktualisieren',
+ 'description' => 'Sichere dein Konto mit einem aktuellen Passwort.',
+ ],
+ 'packages' => [
+ 'label' => 'Pakete entdecken',
+ 'description' => 'Mehr Events oder Speicher buchen – du bleibst flexibel.',
+ ],
+ ],
+ ],
+ ],
+];
diff --git a/resources/lang/en/auth.json b/resources/lang/en/auth.json
index 4f6e271..288d0d0 100644
--- a/resources/lang/en/auth.json
+++ b/resources/lang/en/auth.json
@@ -23,6 +23,8 @@
"description": "Sign in with your Fotospiel account to manage every event in one place.",
"brand": "Die Fotospiel App",
"logo_alt": "Fotospiel App logo",
+ "identifier": "Email or Username",
+ "identifier_placeholder": "you@example.com or username",
"username_or_email": "Username or Email",
"email": "Email Address",
"email_placeholder": "your@email.com",
@@ -49,7 +51,16 @@
"address": "Address",
"phone": "Phone Number",
"privacy_consent": "I agree to the privacy policy and accept the processing of my personal data.",
- "submit": "Register"
+ "privacy_policy_link": "Privacy Policy",
+ "submit": "Register",
+ "first_name_placeholder": "First name",
+ "last_name_placeholder": "Last name",
+ "email_placeholder": "you@example.com",
+ "address_placeholder": "Street, ZIP, City",
+ "phone_placeholder": "+1 555 123 4567",
+ "username_placeholder": "e.g. wedding_julia",
+ "password_placeholder": "At least 8 characters",
+ "password_confirmation_placeholder": "Repeat your password"
},
"verification": {
"notice": "Please verify your email address.",
diff --git a/resources/lang/en/dashboard.php b/resources/lang/en/dashboard.php
new file mode 100644
index 0000000..48f483b
--- /dev/null
+++ b/resources/lang/en/dashboard.php
@@ -0,0 +1,168 @@
+ [
+ 'group_label' => 'Customer Hub',
+ ],
+ 'hero' => [
+ 'badge' => 'Customer Hub',
+ 'title' => 'Welcome back, :name!',
+ 'subtitle' => 'Your overview of packages, invoices, and progress — open the Admin App for every detail.',
+ 'description' => 'Use the dashboard for oversight, billing, and insights — the Admin App supports every operational task on site.',
+ ],
+ 'language_switcher' => [
+ 'label' => 'Language',
+ 'change' => 'Change language',
+ ],
+ 'email_verification' => [
+ 'title' => 'Please verify your email address',
+ 'description' => 'You can use all features once your email address is confirmed. Check your inbox or request a new link.',
+ 'cta' => 'Resend link',
+ 'cta_pending' => 'Sending…',
+ 'success' => 'We just sent another verification link to your inbox.',
+ ],
+ 'stats' => [
+ 'active_events' => [
+ 'label' => 'Active events',
+ 'description_positive' => 'Events are live and visible to guests.',
+ 'description_zero' => 'No event published yet — start today!',
+ ],
+ 'upcoming_events' => [
+ 'label' => 'Upcoming events',
+ 'description_positive' => 'Planning is underway — keep an eye on checklists and tasks.',
+ 'description_zero' => 'Let the assistant help you plan the first event.',
+ ],
+ 'new_photos' => [
+ 'label' => 'New photos (7 days)',
+ 'description_positive' => 'Fresh memories submitted by your guests.',
+ 'description_zero' => 'Collect first uploads via QR code or direct link.',
+ ],
+ 'task_progress' => [
+ 'label' => 'Event checklist',
+ 'description_positive' => 'Great progress! Keep your task list up to date.',
+ 'description_zero' => 'Use tasks and templates for a structured flow.',
+ 'note' => ':value% of your event checklist finished.',
+ ],
+ ],
+ 'spotlight' => [
+ 'title' => 'Admin App as command center',
+ 'description' => 'Plan events, approve uploads, and guide guests — mobile and in real time.',
+ 'cta' => 'Open Admin App',
+ 'items' => [
+ 'live' => [
+ 'title' => 'Live at the event',
+ 'description' => 'Moderate uploads, approve content, and send push updates at any time.',
+ ],
+ 'mobile' => [
+ 'title' => 'Optimised for mobile use',
+ 'description' => 'PWA today, native apps tomorrow — one access for the whole team.',
+ ],
+ 'overview' => [
+ 'title' => 'Dashboard for overview',
+ 'description' => 'Keep packages, invoices, and progress in sight inside the web portal.',
+ ],
+ ],
+ ],
+ 'onboarding' => [
+ 'card' => [
+ 'title' => 'Your start in five steps',
+ 'description' => 'Complete each step inside the Admin App — the dashboard keeps track of your status.',
+ 'completed' => 'All steps finished — fantastic! You can switch to the Admin App at any time.',
+ 'cta_fallback' => 'Start now',
+ ],
+ 'admin_app' => [
+ 'title' => 'Open the Admin App',
+ 'description' => 'Manage events, uploads, and guests inside the Admin App. The mobile interface is optimised for live operations.',
+ 'cta' => 'Launch Admin App',
+ ],
+ 'event_setup' => [
+ 'title' => 'Prepare first event',
+ 'description' => 'Define name, date, and tasks inside the Admin App so guests know which photos you expect.',
+ 'cta' => 'Create event',
+ ],
+ 'invite_guests' => [
+ 'title' => 'Invite guests',
+ 'description' => 'Share QR codes or links so guests can start uploading instantly.',
+ 'cta' => 'Open QR links',
+ ],
+ 'collect_photos' => [
+ 'title' => 'Collect first photos',
+ 'description' => 'As soon as uploads arrive, they show up in your gallery. Moderation happens inside the Admin App.',
+ 'cta' => 'Review uploads',
+ ],
+ 'branding' => [
+ 'title' => 'Fine-tune branding & tasks',
+ 'description' => 'Adjust colours and task bundles to match your occasion — everything feels tailor-made.',
+ 'cta' => 'Open branding',
+ ],
+ ],
+ 'events' => [
+ 'card' => [
+ 'title' => 'Upcoming events',
+ 'description' => 'Keep track of status, uploads, and tasks for your next events.',
+ 'badge' => [
+ 'plural' => ':count scheduled',
+ 'empty' => 'No event scheduled yet',
+ ],
+ 'empty' => 'Plan your first event and steer the full journey — from briefing to follow-up — in the Admin App.',
+ ],
+ 'status' => [
+ 'live' => 'Live',
+ 'upcoming' => 'In preparation',
+ ],
+ 'badges' => [
+ 'photos' => 'Photos',
+ 'tasks' => 'Tasks',
+ 'links' => 'Links',
+ ],
+ ],
+ 'cards_section' => [
+ 'package' => [
+ 'title' => 'Current package',
+ 'description' => 'Stay on top of durations and available volume.',
+ 'remaining' => ':count events',
+ 'expires_at' => 'Expires on',
+ 'price' => 'Price',
+ 'latest' => 'Last booked on :date via :provider.',
+ 'empty' => 'No active package yet.',
+ 'empty_cta' => 'Choose a package now',
+ 'empty_suffix' => 'and then create events inside the Admin App.',
+ ],
+ 'purchases' => [
+ 'title' => 'Recent purchases',
+ 'description' => 'Track your booked packages and add-ons.',
+ 'badge' => ':count entries',
+ 'empty' => 'No purchases visible yet. Secure your first bundle now.',
+ 'table' => [
+ 'package' => 'Package',
+ 'type' => 'Type',
+ 'provider' => 'Provider',
+ 'date' => 'Date',
+ 'price' => 'Price',
+ ],
+ ],
+ 'quick_actions' => [
+ 'title' => 'Quick actions',
+ 'description' => 'Everything you need for the next step is one click away.',
+ 'cta' => 'Continue',
+ 'items' => [
+ 'tenant_admin' => [
+ 'label' => 'Open Admin App',
+ 'description' => 'Detailed event management, moderation, and live features.',
+ ],
+ 'profile' => [
+ 'label' => 'Manage profile',
+ 'description' => 'Update contact data, language, and email address.',
+ ],
+ 'password' => [
+ 'label' => 'Update password',
+ 'description' => 'Protect your account with a fresh password.',
+ ],
+ 'packages' => [
+ 'label' => 'Explore packages',
+ 'description' => 'Book more events or storage — stay flexible.',
+ ],
+ ],
+ ],
+ ],
+];