added a help system, replaced the words "tenant" and "Pwa" with better alternatives. corrected and implemented cron jobs. prepared going live on a coolify-powered system.

This commit is contained in:
Codex Agent
2025-11-10 16:23:09 +01:00
parent ba9e64dfcb
commit 447a90a742
123 changed files with 6398 additions and 153 deletions

View File

@@ -14,7 +14,7 @@
"panel_title": "Team Login für Fotospiel",
"panel_copy": "Melde dich an, um Events zu planen, Fotos zu moderieren und Aufgaben im Fotospiel-Team zu koordinieren.",
"actions_title": "Wähle deine Anmeldemethode",
"actions_copy": "Greife sicher mit deinem Fotospiel-Login oder deinem Google-Konto auf das Tenant-Dashboard zu.",
"actions_copy": "Greife sicher mit deinem Fotospiel-Login oder deinem Google-Konto auf das Kunden-Dashboard zu.",
"cta": "Mit Fotospiel-Login fortfahren",
"google_cta": "Mit Google anmelden",
"open_account_login": "Konto-Login öffnen",
@@ -24,12 +24,12 @@
"oauth_errors": {
"login_required": "Bitte melde dich zuerst in deinem Fotospiel-Konto an.",
"invalid_request": "Die Login-Anfrage war ungültig. Bitte versuche es erneut.",
"invalid_client": "Die verknüpfte Tenant-App wurde nicht gefunden. Wende dich an den Support, falls das Problem bleibt.",
"invalid_client": "Die verknüpfte Kunden-App wurde nicht gefunden. Wende dich an den Support, falls das Problem bleibt.",
"invalid_redirect": "Die angegebene Weiterleitungsadresse ist für diese App nicht hinterlegt.",
"invalid_scope": "Die App fordert Berechtigungen an, die nicht freigegeben sind.",
"tenant_mismatch": "Du hast keinen Zugriff auf den Tenant, der diese Anmeldung angefordert hat.",
"tenant_mismatch": "Du hast keinen Zugriff auf das Kundenkonto, das diese Anmeldung angefordert hat.",
"google_failed": "Die Anmeldung mit Google war nicht erfolgreich. Bitte versuche es erneut oder wähle eine andere Methode.",
"google_no_match": "Wir konnten dieses Google-Konto keinem Tenant-Admin zuordnen. Bitte melde dich mit Fotospiel-Zugangsdaten an."
"google_no_match": "Wir konnten dieses Google-Konto keinem Kunden-Admin zuordnen. Bitte melde dich mit Fotospiel-Zugangsdaten an."
},
"return_hint": "Nach dem Anmelden leiten wir dich automatisch zurück.",
"support": "Du brauchst Zugriff? Kontaktiere dein Event-Team oder schreib uns an support@fotospiel.de.",

View File

@@ -1,6 +1,6 @@
{
"app": {
"brand": "Fotospiel Tenant Admin",
"brand": "Fotospiel Kunden-Admin",
"languageSwitch": "Sprache",
"userMenu": "Konto",
"help": "FAQ & Hilfe",

View File

@@ -5,7 +5,7 @@
"guidedSetup": "Guided Setup"
},
"welcome": {
"fallbackName": "Tenant-Admin",
"fallbackName": "Kunden-Admin",
"greeting": "Hallo {{name}}!",
"subtitle": "Behalte deine Events, Pakete und Aufgaben im Blick."
},
@@ -24,7 +24,7 @@
},
"overview": {
"title": "Kurzer Überblick",
"description": "Wichtigste Kennzahlen deines Tenants auf einen Blick.",
"description": "Wichtigste Kennzahlen deines Nutzerkontos auf einen Blick.",
"noPackage": "Kein aktives Paket",
"stats": {
"activePackage": "Aktives Paket",
@@ -125,7 +125,7 @@
},
"faq": {
"title": "FAQ & Hilfe",
"subtitle": "Antworten und Hinweise rund um den Tenant Admin.",
"subtitle": "Antworten und Hinweise rund um den Kunden-Admin.",
"intro": {
"title": "Was dich erwartet",
"description": "Wir sammeln aktuell Feedback und erweitern dieses Hilfe-Center Schritt für Schritt."
@@ -148,6 +148,26 @@
"contact": "Support kontaktieren"
}
},
"helpCenter": {
"title": "Hilfe & Dokumentation",
"subtitle": "Geführte Anleitungen und Troubleshooting für Event-Admins.",
"search": {
"placeholder": "Suche nach Thema oder Stichwort"
},
"list": {
"empty": "Keine Artikel gefunden.",
"error": "Hilfe konnte nicht geladen werden.",
"retry": "Erneut versuchen",
"updated": "Aktualisiert {{date}}"
},
"article": {
"placeholder": "Wähle links einen Artikel aus, um Details zu sehen.",
"loading": "Artikel wird geladen...",
"error": "Artikel konnte nicht geladen werden.",
"updated": "Aktualisiert am {{date}}",
"related": "Verwandte Artikel"
}
},
"dashboard": {
"actions": {
"newEvent": "Neues Event",
@@ -155,7 +175,7 @@
"guidedSetup": "Guided Setup"
},
"welcome": {
"fallbackName": "Tenant-Admin",
"fallbackName": "Kunden-Admin",
"greeting": "Hallo {{name}}!",
"subtitle": "Behalte deine Events, Pakete und Aufgaben im Blick."
},
@@ -174,7 +194,7 @@
},
"overview": {
"title": "Kurzer Überblick",
"description": "Wichtigste Kennzahlen deines Tenants auf einen Blick.",
"description": "Wichtigste Kennzahlen deines Nutzerkontos auf einen Blick.",
"noPackage": "Kein aktives Paket",
"stats": {
"activePackage": "Aktives Paket",

View File

@@ -60,7 +60,7 @@
},
"transactions": {
"title": "Paddle-Transaktionen",
"description": "Neueste Paddle-Transaktionen für diesen Tenant.",
"description": "Neueste Paddle-Transaktionen für dieses Kundenkonto.",
"empty": "Noch keine Paddle-Transaktionen.",
"labels": {
"transactionId": "Transaktion {{id}}",
@@ -121,7 +121,7 @@
"empty": "Noch keine Events - starte jetzt und lege dein erstes Event an.",
"count": "{{count}} {{count, plural, one {Event} other {Events}}} aktiv verwaltet.",
"badge": {
"dashboard": "Tenant Dashboard"
"dashboard": "Kunden-Dashboard"
}
}
}
@@ -168,7 +168,7 @@
"submit": "Einladung senden"
},
"roles": {
"tenantAdmin": "Tenant-Admin",
"tenantAdmin": "Kunden-Admin",
"member": "Mitglied",
"guest": "Gast"
},

View File

@@ -1,6 +1,6 @@
{
"layout": {
"eyebrow": "Fotospiel Tenant Admin",
"eyebrow": "Fotospiel Kunden-Admin",
"title": "Willkommen im Event-Erlebnisstudio",
"subtitle": "Starte mit einer inspirierten Einführung, sichere dir dein Event-Paket und kreiere die perfekte Gästegalerie alles optimiert für mobile Hosts.",
"alreadyFamiliar": "Schon vertraut mit Fotospiel?",
@@ -180,7 +180,7 @@
"pendingDescription": "Du kannst das Event bereits vorbereiten. Spätestens zur Veröffentlichung benötigst du ein aktives Paket."
},
"free": {
"description": "Dieses Paket ist kostenlos. Du kannst es sofort deinem Tenant zuweisen und direkt mit dem Setup weitermachen.",
"description": "Dieses Paket ist kostenlos. Du kannst es sofort deinem Kundenkonto zuweisen und direkt mit dem Setup weitermachen.",
"activate": "Gratis-Paket aktivieren",
"progress": "Aktivierung läuft …",
"successTitle": "Gratis-Paket aktiviert",

View File

@@ -14,7 +14,7 @@
"panel_title": "Sign in",
"panel_copy": "Sign in with your Fotospiel admin access. Sanctum personal access tokens and clear role permissions keep your account protected.",
"actions_title": "Choose your sign-in method",
"actions_copy": "Access the tenant dashboard securely with your Fotospiel login or your Google account.",
"actions_copy": "Access the customer dashboard securely with your Fotospiel login or your Google account.",
"cta": "Continue with Fotospiel login",
"google_cta": "Continue with Google",
"open_account_login": "Open account login",
@@ -24,12 +24,12 @@
"oauth_errors": {
"login_required": "Please sign in to your Fotospiel account before continuing.",
"invalid_request": "The login request was invalid. Please try again.",
"invalid_client": "We couldnt find the linked tenant app. Please contact support if this persists.",
"invalid_client": "We couldnt find the linked customer app. Please contact support if this persists.",
"invalid_redirect": "The redirect address is not registered for this app.",
"invalid_scope": "The app asked for permissions it cannot receive.",
"tenant_mismatch": "You dont have access to the tenant that requested this login.",
"tenant_mismatch": "You dont have access to the customer account that requested this login.",
"google_failed": "Google sign-in was not successful. Please try again or use another method.",
"google_no_match": "We couldnt link this Google account to a tenant admin. Please sign in with Fotospiel credentials."
"google_no_match": "We couldnt link this Google account to a customer admin. Please sign in with Fotospiel credentials."
},
"return_hint": "After signing in youll be brought back automatically.",
"support": "Need access? Contact your event team or email support@fotospiel.de — we're happy to help.",

View File

@@ -1,6 +1,6 @@
{
"app": {
"brand": "Fotospiel Tenant Admin",
"brand": "Fotospiel Customer Admin",
"languageSwitch": "Language",
"userMenu": "Account",
"help": "FAQ & Help",

View File

@@ -5,7 +5,7 @@
"guidedSetup": "Guided setup"
},
"welcome": {
"fallbackName": "Tenant Admin",
"fallbackName": "Customer Admin",
"greeting": "Welcome, {{name}}!",
"subtitle": "Keep your events, packages, and tasks on track."
},
@@ -24,7 +24,7 @@
},
"overview": {
"title": "At a glance",
"description": "Key tenant metrics at a glance.",
"description": "Key customer metrics at a glance.",
"noPackage": "No active package",
"stats": {
"activePackage": "Active package",
@@ -125,7 +125,7 @@
},
"faq": {
"title": "FAQ & Help",
"subtitle": "Answers and hints around the tenant admin.",
"subtitle": "Answers and hints around the customer admin.",
"intro": {
"title": "What to expect",
"description": "We are collecting feedback and will expand this help center step by step."
@@ -148,6 +148,26 @@
"contact": "Contact support"
}
},
"helpCenter": {
"title": "Help & documentation",
"subtitle": "Structured guides and troubleshooting for customer admins.",
"search": {
"placeholder": "Search by topic or keyword"
},
"list": {
"empty": "No articles found.",
"error": "Help could not be loaded.",
"retry": "Try again",
"updated": "Updated {{date}}"
},
"article": {
"placeholder": "Select an article on the left to view details.",
"loading": "Loading article...",
"error": "The article could not be loaded.",
"updated": "Updated on {{date}}",
"related": "Related articles"
}
},
"dashboard": {
"actions": {
"newEvent": "New Event",
@@ -155,7 +175,7 @@
"guidedSetup": "Guided setup"
},
"welcome": {
"fallbackName": "Tenant Admin",
"fallbackName": "Customer Admin",
"greeting": "Welcome, {{name}}!",
"subtitle": "Keep your events, packages, and tasks on track."
},
@@ -174,7 +194,7 @@
},
"overview": {
"title": "At a glance",
"description": "Key tenant metrics at a glance.",
"description": "Key customer metrics at a glance.",
"noPackage": "No active package",
"stats": {
"activePackage": "Active package",

View File

@@ -60,7 +60,7 @@
},
"transactions": {
"title": "Paddle transactions",
"description": "Recent Paddle transactions for this tenant.",
"description": "Recent Paddle transactions for this customer account.",
"empty": "No Paddle transactions yet.",
"labels": {
"transactionId": "Transaction {{id}}",
@@ -121,7 +121,7 @@
"empty": "No events yet create your first one to get started.",
"count": "{{count}} {{count, plural, one {event} other {events}}} managed.",
"badge": {
"dashboard": "Tenant dashboard"
"dashboard": "Customer dashboard"
}
}
}
@@ -168,7 +168,7 @@
"submit": "Send invitation"
},
"roles": {
"tenantAdmin": "Tenant admin",
"tenantAdmin": "Customer admin",
"member": "Member",
"guest": "Guest"
},
@@ -627,11 +627,11 @@
"eventType": "Event type",
"allEventTypes": "All event types",
"globalOnly": "Global templates",
"tenantOnly": "Tenant collections"
"tenantOnly": "Customer collections"
},
"scope": {
"global": "Global template",
"tenant": "Tenant-owned"
"tenant": "Customer-owned"
},
"empty": {
"title": "No collections yet",
@@ -676,7 +676,7 @@
},
"scope": {
"global": "Global",
"tenant": "Tenant"
"tenant": "Customer"
},
"labels": {
"updated": "Updated: {{date}}",

View File

@@ -1,6 +1,6 @@
{
"layout": {
"eyebrow": "Fotospiel Tenant Admin",
"eyebrow": "Fotospiel Customer Admin",
"title": "Welcome to your event studio",
"subtitle": "Begin with an inspired introduction, secure your package, and craft the perfect guest gallery all optimised for mobile hosts.",
"alreadyFamiliar": "Already familiar with Fotospiel?",
@@ -50,7 +50,7 @@
"landingProgress": {
"eyebrow": "Onboarding tracker",
"title": "Stay aligned with your marketing dashboard",
"description": "Complete these quick wins so the marketing dashboard reflects your latest tenant progress.",
"description": "Complete these quick wins so the marketing dashboard reflects your latest customer progress.",
"status": {
"complete": "Completed",
"pending": "Pending"
@@ -180,7 +180,7 @@
"pendingDescription": "You can start preparing the event. An active package is required before going live."
},
"free": {
"description": "This package is free. Assign it to your tenant and continue immediately.",
"description": "This package is free. Assign it to your customer account and continue immediately.",
"activate": "Activate free package",
"progress": "Activating …",
"successTitle": "Free package activated",