added missing translations

This commit is contained in:
Codex Agent
2025-11-26 14:41:39 +01:00
parent ff168834b4
commit ecac9507a4
35 changed files with 2812 additions and 256 deletions

View File

@@ -34,5 +34,10 @@
"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.",
"appearance_label": "Darstellung"
},
"redirecting": "Weiterleitung zum Login …",
"processing": {
"title": "Anmeldung wird verarbeitet …",
"copy": "Einen Moment bitte, wir bereiten dein Dashboard vor."
}
}

View File

@@ -278,9 +278,18 @@
"untitled": "Unbenanntes Event"
}
},
"tasks": {
"title": "Event-Tasks",
"subtitle": "Verwalte Aufgaben, die diesem Event zugeordnet sind.",
"eventMenu": {
"summary": "Übersicht",
"photos": "Uploads",
"tasks": "Aufgaben",
"invites": "Einladungen",
"branding": "Branding",
"photobooth": "Photobooth",
"recap": "Nachbereitung"
},
"eventTasks": {
"title": "Aufgaben & Missionen",
"subtitle": "Stelle Mission Cards und Aufgaben für dieses Event zusammen.",
"actions": {
"back": "Zurück zur Übersicht",
"assign": "Ausgewählte Tasks zuweisen"
@@ -290,7 +299,8 @@
"load": "Event-Tasks konnten nicht geladen werden.",
"assign": "Tasks konnten nicht zugewiesen werden.",
"photoOnlyEnable": "Foto-Modus konnte nicht aktiviert werden.",
"photoOnlyDisable": "Foto-Modus konnte nicht deaktiviert werden."
"photoOnlyDisable": "Foto-Modus konnte nicht deaktiviert werden.",
"collections": "Kollektionen konnten nicht geladen werden."
},
"emotions": {
"error": "Emotionen konnten nicht geladen werden."
@@ -299,10 +309,28 @@
"notFoundTitle": "Event nicht gefunden",
"notFoundDescription": "Bitte kehre zur Eventliste zurück."
},
"tabs": {
"tasks": "Aufgaben",
"packs": "Mission Packs"
},
"eventStatus": "Status: {{status}}",
"summary": {
"assigned": "Zugeordnete Tasks",
"library": "Bibliothek",
"mode": "Aktiver Modus",
"tasksMode": "Mission Cards",
"photoOnly": "Nur Fotos"
},
"library": {
"hintTitle": "Weitere Vorlagen in der Aufgaben-Bibliothek",
"hintCopy": "Lege Aufgaben, Emotionen oder Mission Packs zentral an und nutze sie in mehreren Events.",
"open": "Aufgaben-Bibliothek öffnen"
},
"sections": {
"assigned": {
"title": "Zugeordnete Tasks",
"search": "Aufgaben suchen...",
"noResults": "Keine Aufgaben zum Suchbegriff.",
"empty": "Noch keine Tasks zugewiesen."
},
"library": {
@@ -316,15 +344,32 @@
"high": "Hoch",
"urgent": "Dringend"
},
"modes": {
"title": "Aufgaben & Foto-Modus",
"photoOnlyHint": "Der Foto-Modus ist aktiv. Gäste können Fotos hochladen, sehen aber keine Aufgaben.",
"tasksHint": "Aufgaben werden in der Gäste-App angezeigt. Deaktiviere sie für einen reinen Foto-Modus.",
"modes": {
"title": "Aufgaben & Foto-Modus",
"photoOnlyHint": "Der Foto-Modus ist aktiv. Gäste können Fotos hochladen, sehen aber keine Aufgaben.",
"tasksHint": "Aufgaben sind aktiv. Gäste sehen Mission Cards in der App.",
"photoOnly": "Foto-Modus",
"tasks": "Aufgaben aktiv",
"switchLabel": "Foto-Modus aktivieren",
"switchLabel": "Aufgaben aktivieren/deaktivieren",
"updating": "Einstellung wird gespeichert ..."
},
"collections": {
"title": "Mission Packs",
"subtitle": "Importiere Aufgaben-Kollektionen, die zu deinem Event passen.",
"viewAll": "Alle Kollektionen ansehen",
"errorTitle": "Kollektionen nicht verfügbar",
"empty": "Keine empfohlenen Kollektionen gefunden.",
"tasksCount": "{{count}} Aufgaben",
"genericType": "Allgemein",
"global": "Global",
"custom": "Custom",
"recommended": "Empfohlen",
"optional": "Optional",
"importCta": "Mission Pack importieren",
"imported": "Kollektion erfolgreich importiert",
"importFailed": "Mission Pack konnte nicht importiert werden",
"error": "Kollektionen konnten nicht geladen werden."
},
"toolkit": {
"titleFallback": "Event-Day Toolkit",
"subtitle": "Behalte Uploads, Aufgaben und QR-Einladungen am Eventtag im Blick.",
@@ -772,6 +817,11 @@
"workspace": {
"detailSubtitle": "Behalte Status, Aufgaben und Einladungen deines Events im Blick.",
"toolkitSubtitle": "Moderation, Aufgaben und Einladungen für deinen Eventtag bündeln.",
"hero": {
"badge": "Event",
"description": "Konzentriere dich auf Aufgaben, Moderation und Einladungen für dieses Event.",
"liveBadge": "Live?"
},
"sections": {
"statusTitle": "Eventstatus & Sichtbarkeit",
"statusSubtitle": "Aktiviere dein Event für Gäste oder verstecke es vorübergehend."
@@ -780,6 +830,7 @@
"status": "Status",
"active": "Aktiv für Gäste",
"date": "Eventdatum",
"noDate": "Kein Datum",
"eventType": "Event-Typ",
"insights": "Letzte Aktivität",
"uploadsTotal": "{{count}} Uploads gesamt",
@@ -832,6 +883,7 @@
"activeInvites": "Aktive Einladungen"
},
"invites": {
"badge": "Einladungen",
"title": "QR-Einladungen",
"subtitle": "Behält aktive Einladungen und Layouts im Blick.",
"activeCount": "{{count}} aktiv",
@@ -840,11 +892,69 @@
"manage": "Layouts & Einladungen verwalten"
},
"tasks": {
"badge": "Aufgaben",
"title": "Aktive Aufgaben",
"subtitle": "Motiviere Gäste mit klaren Aufgaben & Highlights.",
"summary": "{{completed}} von {{total}} erledigt",
"empty": "Noch keine Aufgaben zugewiesen.",
"manage": "Aufgabenbereich öffnen"
"manage": "Aufgabenbereich öffnen",
"status": {
"completed": "Erledigt",
"open": "Offen"
}
},
"recap": {
"badge": "Nachbereitung",
"subtitle": "Abschluss, Export und Galerie-Laufzeit verwalten.",
"galleryTitle": "Galerie-Status",
"galleryCounts": "{{photos}} Fotos, {{pending}} offen, {{likes}} Likes",
"open": "Offen",
"closed": "Geschlossen",
"openGallery": "Galerie öffnen",
"closeGallery": "Galerie schließen",
"moderate": "Uploads ansehen",
"shareGuests": "Gäste-Galerie teilen",
"shareLink": "Gäste-Link",
"noPublicUrl": "Kein Gäste-Link gesetzt. Lege den öffentlichen Link im Event-Setup fest.",
"copyLink": "Link kopieren",
"copySuccess": "Link kopiert",
"copyError": "Link konnte nicht geteilt werden.",
"qrTitle": "QR-Code teilen",
"qrDownload": "QR-Code herunterladen",
"qrShare": "Link/QR teilen",
"qrAlt": "QR-Code zur Gäste-Galerie",
"allowDownloads": "Downloads erlauben",
"allowDownloadsHint": "Gäste dürfen Fotos speichern",
"allowSharing": "Teilen erlauben",
"allowSharingHint": "Gäste dürfen Links teilen",
"galleryOpen": "Galerie geöffnet",
"galleryClosed": "Galerie geschlossen",
"exportTitle": "Export & Backup",
"exportCopy": "Alle Assets sichern",
"exportHint": "Zip/CSV Export und Backup anstoßen.",
"backup": "Backup",
"downloadAll": "Alles herunterladen",
"downloadHighlights": "Highlights herunterladen",
"highlightsHint": "„Highlights“ = als Highlight markierte Fotos in der Galerie.",
"retentionTitle": "Verlängerung / Archivierung",
"expiresAt": "Läuft ab am {{date}}",
"noExpiry": "Ablaufdatum nicht gesetzt",
"retentionHint": "Verlängere die Galerie-Laufzeit mit einem Add-on. Verlängerungen addieren sich.",
"expiry": "Ablauf",
"archive": "Archivieren/Löschen",
"extendOptions": "Alle Add-ons für dieses Event",
"extendHint": "Verlängerungen addieren sich. Checkout öffnet in einem neuen Tab.",
"priceMissing": "Preis nicht verknüpft",
"noAddons": "Aktuell keine Add-ons verfügbar.",
"archivedSuccess": "Event archiviert. Galerie ist geschlossen.",
"archiveTitle": "Galerie archivieren?",
"archiveDesc": "Das Archivieren schließt die Galerie, deaktiviert Gäste-Links und stoppt neue Uploads. Exporte vorher abschließen.",
"archiveImpact": "Auswirkungen des Archivierens",
"archiveImpactClose": "Gäste-Zugriff endet; Uploads/Downloads werden deaktiviert.",
"archiveImpactLinks": "Öffentliche Links und QR-Codes werden ungültig; Sessions laufen aus.",
"archiveImpactData": "Daten bleiben intern für Compliance/Support und können auf Anfrage gelöscht werden (DSGVO).",
"archiveConfirm": "Ich habe Exporte abgeschlossen und möchte jetzt archivieren.",
"archiveConfirmCta": "Jetzt archivieren"
},
"branding": {
"badge": "Branding & Story",
@@ -891,15 +1001,114 @@
"feedback": {
"title": "Wie läuft dein Event?",
"subtitle": "Feedback hilft uns, neue Features zu priorisieren.",
"positive": "Super Lauf!",
"neutral": "Läuft",
"negative": "Braucht Support",
"afterEventTitle": "Event beendet kurzes Feedback?",
"afterEventCopy": "Hat alles geklappt? Deine Antwort hilft uns für kommende Events.",
"privacyHint": "Nur Admin-Feedback, keine Gastdaten",
"positive": "War super",
"neutral": "In Ordnung",
"negative": "Brauch(t)e Unterstützung",
"best": {
"uploads": "Uploads & Geschwindigkeit",
"invites": "QR-Einladungen & Layouts",
"moderation": "Moderation & Export",
"experience": "Allgemeine App-Erfahrung"
},
"placeholder": "Optional: Lass uns wissen, was gut funktioniert oder wo du Unterstützung brauchst.",
"errorTitle": "Feedback konnte nicht gesendet werden.",
"authError": "Deine Session ist abgelaufen. Bitte melde dich erneut an.",
"genericError": "Feedback konnte nicht gesendet werden.",
"submit": "Feedback senden",
"submitted": "Danke!"
"submitted": "Danke!",
"afterEventThanks": "Dein Feedback ist angekommen. Wir melden uns, falls Rückfragen bestehen.",
"sendAnother": "Weiteres Feedback senden",
"supportFollowup": "Support anfragen",
"cta": "Feedback geben",
"quickSentiment": "Stimmung auswählbar (positiv/neutral/Support).",
"dialogTitle": "Kurzes After-Event Feedback",
"dialogCopy": "Wähle eine Stimmung, was am besten lief und optional, was wir verbessern sollen.",
"sentiment": "Stimmung",
"bestQuestion": "Was lief am besten?",
"improve": "Was sollen wir verbessern?",
"supportHelp": "Ich hätte gern ein kurzes Follow-up (Support)."
}
},
"tasks": {
"actions": {
"back": "Zurück zur Übersicht",
"assign": "Ausgewählte Tasks zuweisen"
},
"title": "Aufgaben & Missionen",
"subtitle": "Stelle Mission Cards und Aufgaben für dieses Event zusammen.",
"alerts": {
"notFoundTitle": "Event nicht gefunden",
"notFoundDescription": "Bitte kehre zur Eventliste zurück."
},
"tabs": {
"tasks": "Aufgaben",
"packs": "Mission Packs"
},
"eventStatus": "Status: {{status}}",
"modes": {
"title": "Aufgaben & Foto-Modus",
"tasksHint": "Aufgaben sind aktiv. Gäste sehen Mission Cards in der App.",
"photoOnlyHint": "Der Foto-Modus ist aktiv. Gäste können Fotos hochladen, sehen aber keine Aufgaben.",
"tasks": "Aufgaben aktiv",
"photoOnly": "Foto-Modus",
"switchLabel": "Aufgaben aktivieren/deaktivieren",
"updating": "Einstellung wird gespeichert ..."
},
"summary": {
"assigned": "Zugeordnete Tasks",
"library": "Bibliothek",
"mode": "Aktiver Modus",
"tasksMode": "Mission Cards",
"photoOnly": "Nur Fotos"
},
"library": {
"hintTitle": "Weitere Vorlagen in der Aufgaben-Bibliothek",
"hintCopy": "Lege eigene Aufgaben, Emotionen oder Mission Packs zentral an und nutze sie in mehreren Events.",
"open": "Aufgaben-Bibliothek öffnen"
},
"sections": {
"assigned": {
"title": "Zugeordnete Tasks",
"search": "Aufgaben suchen...",
"noResults": "Keine Aufgaben zum Suchbegriff.",
"empty": "Noch keine Tasks zugewiesen."
},
"library": {
"title": "Tasks aus Bibliothek hinzufügen",
"empty": "Keine Tasks in der Bibliothek gefunden."
}
},
"actionsShort": {
"assign": "Ausgewählte Tasks zuweisen"
},
"errors": {
"missingSlug": "Kein Event-Slug angegeben.",
"load": "Event-Tasks konnten nicht geladen werden.",
"assign": "Tasks konnten nicht zugewiesen werden.",
"collections": "Kollektionen konnten nicht geladen werden.",
"photoOnlyEnable": "Foto-Modus konnte nicht aktiviert werden.",
"photoOnlyDisable": "Foto-Modus konnte nicht deaktiviert werden."
},
"collections": {
"errorTitle": "Kollektionen nicht verfügbar",
"import": "Kollektion importieren",
"error": "Kollektionen konnten nicht geladen werden.",
"title": "Mission Packs",
"subtitle": "Importiere Aufgaben-Kollektionen, die zu deinem Event passen.",
"viewAll": "Alle Kollektionen ansehen",
"empty": "Keine empfohlenen Kollektionen gefunden.",
"tasksCount": "{{count}} Aufgaben",
"genericType": "Allgemein",
"global": "Global",
"custom": "Custom",
"recommended": "Empfohlen",
"optional": "Optional",
"importCta": "Mission Pack importieren",
"imported": "Kollektion erfolgreich importiert",
"importFailed": "Mission Pack konnte nicht importiert werden"
}
},
"collections": {
@@ -1188,5 +1397,236 @@
}
}
}
},
"branding": {
"title": "Branding & Fonts",
"subtitle": "Passe Farben, Typografie, Logos/Emojis und Buttons für die Gäste-App an.",
"errors": {
"missingSlug": "Kein Event ausgewählt öffne es über die Eventliste."
},
"actions": {
"back": "Zurück zum Event"
},
"sections": {
"mode": "Standard vs. Event-spezifisch",
"toggleTitle": "Branding-Quelle wählen",
"toggleDescription": "Nutze das Standard-Branding des Tenants oder überschreibe es nur für dieses Event.",
"palette": "Palette & Modus",
"colorsTitle": "Farben & Light/Dark",
"colorsDescription": "Primär-, Sekundär-, Hintergrund- und Surface-Farbe festlegen.",
"typography": "Typografie & Logo",
"fonts": "Schriften & Logo/Emoticon",
"fontDescription": "Heading- und Body-Font plus Logo/Emoji und Ausrichtung festlegen.",
"buttons": "Buttons & Links",
"buttonsTitle": "Buttons, Links & Radius",
"buttonsDescription": "Stil, Radius und optionale Link-Farbe wählen.",
"preview": "Preview",
"previewTitle": "Mini-Gastansicht",
"previewCopy": "Header, CTA und Bottom-Navigation nach Branding visualisiert."
},
"useDefault": "Standard nutzen",
"useCustom": "Event-spezifisch",
"toggleHint": "Standard übernimmt die Tenant-Farben, Event-spezifisch überschreibt sie.",
"standard": "Standard",
"custom": "Event",
"toggleAria": "Event-spezifisches Branding aktivieren",
"mode": "Modus",
"modeAuto": "Auto",
"modeLight": "Hell",
"modeDark": "Dunkel",
"typography": {
"heading": "Heading-Font",
"body": "Body-Font"
},
"size": "Schriftgröße",
"logo": {
"value": "Emoticon/Logo-URL",
"mode": "Logo-Modus",
"position": "Position"
},
"emoticon": "Emoticon/Text",
"upload": "Upload/URL",
"left": "Links",
"center": "Zentriert",
"right": "Rechts",
"palette": {
"primary": "Primär",
"secondary": "Sekundär",
"surface": "Surface"
},
"buttonStyle": "Stil",
"buttons": {
"style": "Stil",
"radius": "Radius",
"primary": "Button Primary",
"secondary": "Button Secondary",
"linkColor": "Link-Farbe"
},
"filled": "Filled",
"outline": "Outline",
"radius": "Radius",
"linkColor": "Link-Farbe",
"buttonPrimary": "Button Primary",
"buttonSecondary": "Button Secondary",
"reset": "Auf Standard zurücksetzen",
"save": "Branding speichern",
"saving": "Speichern...",
"saved": "Branding gespeichert.",
"saveError": "Branding konnte nicht gespeichert werden.",
"footer": {
"default": "Standard-Farben des Tenants aktiv.",
"custom": "Event-spezifisches Branding aktiv."
},
"usingDefault": "Tenant-Branding aktiv",
"usingCustom": "Event-Branding aktiv",
"preview": {
"demoTitle": "Demo-Event",
"guestView": "Gastansicht · {{mode}}",
"ctaCopy": "CTA und Buttons spiegeln den gewählten Stil wider.",
"cta": "Fotos jetzt hochladen",
"bottomNav": "Bottom-Navigation"
}
},
"taskLibrary": {
"titles": {
"default": "Task-Bibliothek",
"embedded": "Aufgaben"
},
"subtitles": {
"default": "Weise Aufgaben zu und tracke den Fortschritt rund um deine Events.",
"embedded": "Plane Aufgaben, Aktionen und Highlights für deine Gäste."
},
"errors": {
"title": "Fehler",
"load": "Tasks konnten nicht geladen werden."
},
"actions": {
"collections": "Collections",
"new": "Neu",
"searchPlaceholder": "Nach Aufgaben suchen …"
},
"pagination": {
"page": "Seite {{current}} von {{total}} · {{count}} Einträge",
"summary": "Insgesamt {{count}} Tasks · Seite {{current}} von {{total}}",
"prev": "Zurück",
"next": "Weiter"
},
"form": {
"editTitle": "Task bearbeiten",
"createTitle": "Neue Task erstellen",
"title": "Titel",
"description": "Beschreibung",
"descriptionPlaceholder": "Was sollen Gäste machen?",
"priority": "Priorität",
"priorityPlaceholder": "Priorität wählen",
"dueDate": "Fälligkeitsdatum",
"completedTitle": "Bereits erledigt?",
"completedCopy": "Markiere Aufgaben als abgeschlossen, wenn sie nicht mehr sichtbar sein sollen.",
"cancel": "Abbrechen",
"save": "Speichern"
},
"priorities": {
"low": "Niedrig",
"medium": "Mittel",
"high": "Hoch",
"urgent": "Dringend"
},
"list": {
"template": "Vorlage #{{id}}",
"edit": "Bearbeiten",
"delete": "Löschen"
},
"empty": {
"title": "Noch keine Tasks angelegt",
"description": "Starte mit einer neuen Aufgabe oder importiere Vorlagen, um deine Gäste zu inspirieren.",
"cta": "Erste Task erstellen"
}
},
"billingWarning": {
"title": "Achtung",
"description": "Paket-Hinweise und Limits, die du im Blick behalten solltest."
},
"eventForm": {
"errors": {
"nameRequired": "Bitte gib einen Eventnamen ein.",
"typeRequired": "Bitte wähle einen Event-Typ aus."
},
"titles": {
"create": "Neues Event erstellen",
"edit": "Event bearbeiten"
},
"subtitle": "Fülle die wichtigsten Angaben aus und teile dein Event mit Gästen.",
"sections": {
"details": {
"title": "Eventdetails",
"description": "Name, URL und Datum bestimmen das Auftreten deines Events im Gästeportal."
}
},
"fields": {
"name": {
"label": "Eventname",
"placeholder": "z. B. Sommerfest 2025",
"help": "Die Kennung und Event-URL werden automatisch aus dem Namen generiert."
},
"date": {
"label": "Datum"
},
"type": {
"label": "Event-Typ",
"loading": "Event-Typ wird geladen…",
"placeholder": "Event-Typ auswählen",
"empty": "Keine Event-Typen verfügbar. Bitte lege einen Typ im Adminbereich an."
},
"publish": {
"label": "Event sofort veröffentlichen",
"help": "Aktiviere diese Option, wenn Gäste das Event direkt sehen sollen. Du kannst den Status später ändern."
}
},
"actions": {
"backToList": "Zurück zur Liste",
"saving": "Speichert",
"save": "Speichern",
"cancel": "Abbrechen"
},
"errors": {
"notice": "Hinweis"
}
},
"notifications": {
"trigger": "Benachrichtigungen",
"title": "Benachrichtigungen",
"empty": "Aktuell ruhig",
"empty.message": "Alles erledigt wir melden uns bei Neuigkeiten.",
"action": {
"dismiss": "Ausblenden",
"refresh": "Neue Hinweise laden"
},
"noEvents": {
"title": "Lass uns starten",
"description": "Erstelle dein erstes Event, um Uploads, Aufgaben und Einladungen freizuschalten.",
"cta": "Event erstellen"
},
"draftEvent": {
"title": "Event noch als Entwurf",
"description": "Veröffentliche das Event, um Einladungen und Galerie freizugeben.",
"cta": "Event öffnen"
},
"upcomingEvent": {
"title": "Event startet bald",
"description_today": "Heute findet ein Event statt checke Uploads und Tasks.",
"description_days": "Noch {{count}} Tage bereite Einladungen und Aufgaben vor.",
"cta": "Zum Event"
},
"pendingUploads": {
"title": "Uploads warten auf Freigabe",
"description": "{{count}} neue Uploads benötigen Moderation.",
"cta": "Uploads öffnen"
},
"newPhotos": {
"title": "Neue Fotos eingetroffen",
"description": "{{count}} Uploads warten auf dich.",
"cta": "Galerie öffnen",
"ctaFallback": "Events ansehen"
}
}
}

View File

@@ -34,5 +34,10 @@
"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.",
"appearance_label": "Appearance"
},
"redirecting": "Redirecting to login …",
"processing": {
"title": "Signing you in …",
"copy": "One moment please while we prepare your dashboard."
}
}

View File

@@ -274,9 +274,18 @@
"untitled": "Untitled event"
}
},
"tasks": {
"title": "Event tasks",
"subtitle": "Manage tasks associated with this event.",
"eventMenu": {
"summary": "Overview",
"photos": "Uploads",
"tasks": "Tasks",
"invites": "Invites",
"branding": "Branding",
"photobooth": "Photobooth",
"recap": "Recap"
},
"eventTasks": {
"title": "Tasks & missions",
"subtitle": "Curate mission cards and tasks for this event.",
"actions": {
"back": "Back to overview",
"assign": "Assign selected tasks"
@@ -286,7 +295,8 @@
"load": "Event tasks could not be loaded.",
"assign": "Tasks could not be assigned.",
"photoOnlyEnable": "Photo-only mode could not be enabled.",
"photoOnlyDisable": "Photo-only mode could not be disabled."
"photoOnlyDisable": "Photo-only mode could not be disabled.",
"collections": "Collections could not be loaded."
},
"emotions": {
"error": "Could not load emotions."
@@ -295,10 +305,28 @@
"notFoundTitle": "Event not found",
"notFoundDescription": "Please return to the event list."
},
"tabs": {
"tasks": "Tasks",
"packs": "Mission packs"
},
"eventStatus": "Status: {{status}}",
"summary": {
"assigned": "Assigned tasks",
"library": "Library",
"mode": "Active mode",
"tasksMode": "Mission cards",
"photoOnly": "Photos only"
},
"library": {
"hintTitle": "More templates in the task library",
"hintCopy": "Create tasks, emotions, or mission packs once and reuse them across events.",
"open": "Open task library"
},
"sections": {
"assigned": {
"title": "Assigned tasks",
"search": "Search tasks...",
"noResults": "No tasks match this search term.",
"empty": "No tasks assigned yet."
},
"library": {
@@ -321,6 +349,23 @@
"switchLabel": "Enable photo-only mode",
"updating": "Saving setting ..."
},
"collections": {
"title": "Mission packs",
"subtitle": "Import task collections that fit your event.",
"viewAll": "View all collections",
"errorTitle": "Collections unavailable",
"empty": "No recommended collections found.",
"tasksCount": "{{count}} tasks",
"genericType": "General",
"global": "Global",
"custom": "Custom",
"recommended": "Recommended",
"optional": "Optional",
"importCta": "Import mission pack",
"imported": "Collection imported successfully",
"importFailed": "Mission pack could not be imported",
"error": "Collections could not be loaded."
},
"toolkit": {
"titleFallback": "Event-Day Toolkit",
"subtitle": "Stay on top of uploads, tasks, and invites while your event is live.",
@@ -768,6 +813,11 @@
"workspace": {
"detailSubtitle": "Keep status, tasks, and invites of your event in one view.",
"toolkitSubtitle": "Bundle moderation, tasks, and invites for the event day.",
"hero": {
"badge": "Event",
"description": "Focus on tasks, moderation, and invites for this event.",
"liveBadge": "Live?"
},
"sections": {
"statusTitle": "Event status & visibility",
"statusSubtitle": "Activate the event for guests or hide it temporarily."
@@ -776,6 +826,7 @@
"status": "Status",
"active": "Active for guests",
"date": "Event date",
"noDate": "No date",
"eventType": "Event type",
"insights": "Recent activity",
"uploadsTotal": "{{count}} uploads total",
@@ -828,6 +879,7 @@
"activeInvites": "Active invites"
},
"invites": {
"badge": "Invites",
"title": "QR invites",
"subtitle": "Keep an eye on active links and layouts.",
"activeCount": "{{count}} active",
@@ -836,11 +888,69 @@
"manage": "Manage layouts & invites"
},
"tasks": {
"badge": "Tasks",
"title": "Active tasks",
"subtitle": "Motivate guests with clear prompts & highlights.",
"summary": "{{completed}} of {{total}} complete",
"empty": "No tasks assigned yet.",
"manage": "Open task workspace"
"manage": "Open task workspace",
"status": {
"completed": "Done",
"open": "Open"
}
},
"recap": {
"badge": "Recap",
"subtitle": "Wrap up, export, and manage gallery runtime.",
"galleryTitle": "Gallery status",
"galleryCounts": "{{photos}} photos, {{pending}} pending, {{likes}} likes",
"open": "Open",
"closed": "Closed",
"openGallery": "Open gallery",
"closeGallery": "Close gallery",
"moderate": "View uploads",
"shareGuests": "Share guest gallery",
"shareLink": "Guest link",
"noPublicUrl": "No guest link set. Configure the public link in the event setup.",
"copyLink": "Copy link",
"copySuccess": "Link copied",
"copyError": "Link could not be shared.",
"qrTitle": "Share QR code",
"qrDownload": "Download QR code",
"qrShare": "Share link/QR",
"qrAlt": "Guest gallery QR code",
"allowDownloads": "Allow downloads",
"allowDownloadsHint": "Guests may save photos",
"allowSharing": "Allow sharing",
"allowSharingHint": "Guests may share links",
"galleryOpen": "Gallery open",
"galleryClosed": "Gallery closed",
"exportTitle": "Export & backup",
"exportCopy": "Back up all assets",
"exportHint": "Start ZIP/CSV exports and backups.",
"backup": "Backup",
"downloadAll": "Download everything",
"downloadHighlights": "Download highlights",
"highlightsHint": "“Highlights” = photos marked as highlight in the gallery.",
"retentionTitle": "Extend / archive",
"expiresAt": "Expires on {{date}}",
"noExpiry": "No expiry date set",
"retentionHint": "Extend the gallery runtime with an add-on. Extensions add up.",
"expiry": "Expiry",
"archive": "Archive/Delete",
"extendOptions": "All add-ons for this event",
"extendHint": "Extensions add up. Checkout opens in a new tab.",
"priceMissing": "Price not linked",
"noAddons": "No add-ons available right now.",
"archivedSuccess": "Event archived. Gallery is closed.",
"archiveTitle": "Archive gallery?",
"archiveDesc": "Archiving closes the gallery, deactivates guest links, and stops new uploads. Finish exports first.",
"archiveImpact": "Effects of archiving",
"archiveImpactClose": "Guest access ends; uploads/downloads are disabled.",
"archiveImpactLinks": "Public links and QR codes become invalid; existing sessions expire.",
"archiveImpactData": "Data stays internally for compliance/support and can be deleted on request (GDPR).",
"archiveConfirm": "I completed exports and want to archive now.",
"archiveConfirmCta": "Archive now"
},
"branding": {
"badge": "Branding & story",
@@ -887,15 +997,114 @@
"feedback": {
"title": "How is your event running?",
"subtitle": "Your feedback helps us prioritise improvements.",
"positive": "Going great!",
"neutral": "All right",
"negative": "Needs support",
"placeholder": "Optional: tell us what works well or where you need help.",
"afterEventTitle": "Event wrapped quick feedback?",
"afterEventCopy": "Did everything work out? Your answer helps us support future events.",
"privacyHint": "Admin-only feedback, no guest data",
"positive": "Was great",
"neutral": "Was okay",
"negative": "Needed support",
"best": {
"uploads": "Uploads & speed",
"invites": "QR invites & layouts",
"moderation": "Moderation & export",
"experience": "Overall app experience"
},
"placeholder": "Optional: tell us what worked well or what to improve.",
"errorTitle": "Feedback could not be sent.",
"authError": "Your session expired. Please sign in again.",
"genericError": "Feedback could not be sent.",
"submit": "Send feedback",
"submitted": "Thanks!"
"submitted": "Thanks!",
"afterEventThanks": "Your feedback arrived. Well get back to you if we have questions.",
"sendAnother": "Send another feedback",
"supportFollowup": "Request support",
"cta": "Give feedback",
"quickSentiment": "Pick sentiment (positive/neutral/support).",
"dialogTitle": "Quick after-event feedback",
"dialogCopy": "Pick a sentiment, what worked best, and optionally what to improve.",
"sentiment": "Sentiment",
"bestQuestion": "What worked best?",
"improve": "What should we improve?",
"supportHelp": "Id like a short follow-up (support)."
}
},
"tasks": {
"actions": {
"back": "Back to overview",
"assign": "Assign selected tasks"
},
"title": "Tasks & missions",
"subtitle": "Curate mission cards and tasks for this event.",
"alerts": {
"notFoundTitle": "Event not found",
"notFoundDescription": "Please return to the event list."
},
"tabs": {
"tasks": "Tasks",
"packs": "Mission packs"
},
"eventStatus": "Status: {{status}}",
"modes": {
"title": "Tasks & photo mode",
"tasksHint": "Tasks are active. Guests see mission cards in the app.",
"photoOnlyHint": "Photo-only mode is active. Guests can upload photos but wont see tasks.",
"tasks": "Tasks active",
"photoOnly": "Photo-only",
"switchLabel": "Enable/disable tasks",
"updating": "Saving setting ..."
},
"summary": {
"assigned": "Assigned tasks",
"library": "Library",
"mode": "Active mode",
"tasksMode": "Mission cards",
"photoOnly": "Photos only"
},
"library": {
"hintTitle": "More templates in the task library",
"hintCopy": "Create tasks, emotions, or mission packs once and reuse them across events.",
"open": "Open task library"
},
"sections": {
"assigned": {
"title": "Assigned tasks",
"search": "Search tasks...",
"noResults": "No tasks match this search term.",
"empty": "No tasks assigned yet."
},
"library": {
"title": "Add tasks from library",
"empty": "No tasks found in the library."
}
},
"actionsShort": {
"assign": "Assign selected tasks"
},
"errors": {
"missingSlug": "No event slug provided.",
"load": "Tasks could not be loaded.",
"assign": "Tasks could not be assigned.",
"collections": "Collections could not be loaded.",
"photoOnlyEnable": "Photo-only mode could not be enabled.",
"photoOnlyDisable": "Photo-only mode could not be disabled."
},
"collections": {
"errorTitle": "Collections unavailable",
"import": "Import collection",
"error": "Collections could not be loaded.",
"title": "Mission packs",
"subtitle": "Import task collections that fit your event.",
"viewAll": "View all collections",
"empty": "No recommended collections found.",
"tasksCount": "{{count}} tasks",
"genericType": "General",
"global": "Global",
"custom": "Custom",
"recommended": "Recommended",
"optional": "Optional",
"importCta": "Import mission pack",
"imported": "Collection imported successfully",
"importFailed": "Mission pack could not be imported"
}
},
"collections": {
@@ -1185,8 +1394,235 @@
}
}
},
"branding": {
"title": "Branding & fonts",
"subtitle": "Adjust colors, typography, logos/emoticons, and buttons for the guest app.",
"errors": {
"missingSlug": "No event selected open it from the event list."
},
"actions": {
"back": "Back to event"
},
"sections": {
"mode": "Default vs. event-specific",
"toggleTitle": "Choose branding source",
"toggleDescription": "Use tenant defaults or override only for this event.",
"palette": "Palette & mode",
"colorsTitle": "Colors & light/dark",
"colorsDescription": "Set primary, secondary, background, and surface colors.",
"typography": "Typography & logo",
"fonts": "Fonts & logo/emoticon",
"fontDescription": "Configure heading/body fonts plus logo/emoji and alignment.",
"buttons": "Buttons & links",
"buttonsTitle": "Buttons, links & radius",
"buttonsDescription": "Choose style, radius, and optional link color.",
"preview": "Preview",
"previewTitle": "Mini guest view",
"previewCopy": "Header, CTA, and bottom navigation reflecting your branding."
},
"useDefault": "Use default",
"useCustom": "Event-specific",
"toggleHint": "Default uses tenant colors; event-specific overrides them.",
"standard": "Default",
"custom": "Event",
"toggleAria": "Toggle event-specific branding",
"mode": "Mode",
"modeAuto": "Auto",
"modeLight": "Light",
"modeDark": "Dark",
"typography": {
"heading": "Heading font",
"body": "Body font"
},
"size": "Font size",
"logo": {
"value": "Emoticon/Logo URL",
"mode": "Logo mode",
"position": "Position"
},
"emoticon": "Emoticon/Text",
"upload": "Upload/URL",
"left": "Left",
"center": "Center",
"right": "Right",
"palette": {
"primary": "Primary",
"secondary": "Secondary",
"surface": "Surface"
},
"buttonStyle": "Style",
"buttons": {
"style": "Style",
"radius": "Radius",
"primary": "Button primary",
"secondary": "Button secondary",
"linkColor": "Link color"
},
"filled": "Filled",
"outline": "Outline",
"radius": "Radius",
"linkColor": "Link color",
"buttonPrimary": "Button primary",
"buttonSecondary": "Button secondary",
"reset": "Reset to default",
"save": "Save branding",
"saving": "Saving...",
"saved": "Branding saved.",
"saveError": "Branding could not be saved.",
"footer": {
"default": "Tenant default colors active.",
"custom": "Event-specific branding active."
},
"usingDefault": "Tenant branding active",
"usingCustom": "Event branding active",
"preview": {
"demoTitle": "Demo event",
"guestView": "Guest view · {{mode}}",
"ctaCopy": "CTA & buttons reflect the chosen style.",
"cta": "Upload photos now",
"bottomNav": "Bottom navigation"
}
},
"taskLibrary": {
"titles": {
"default": "Task library",
"embedded": "Tasks"
},
"subtitles": {
"default": "Assign tasks and track progress around your events.",
"embedded": "Plan tasks, actions, and highlights for your guests."
},
"errors": {
"title": "Error",
"load": "Tasks could not be loaded."
},
"actions": {
"collections": "Collections",
"new": "New",
"searchPlaceholder": "Search tasks …"
},
"pagination": {
"page": "Page {{current}} of {{total}} · {{count}} entries",
"summary": "Total {{count}} tasks · Page {{current}} of {{total}}",
"prev": "Back",
"next": "Next"
},
"form": {
"editTitle": "Edit task",
"createTitle": "Create task",
"title": "Title",
"description": "Description",
"descriptionPlaceholder": "What should guests do?",
"priority": "Priority",
"priorityPlaceholder": "Choose priority",
"dueDate": "Due date",
"completedTitle": "Already completed?",
"completedCopy": "Mark tasks as done when they should no longer be visible.",
"cancel": "Cancel",
"save": "Save"
},
"priorities": {
"low": "Low",
"medium": "Medium",
"high": "High",
"urgent": "Urgent"
},
"list": {
"template": "Template #{{id}}",
"edit": "Edit",
"delete": "Delete"
},
"empty": {
"title": "No tasks yet",
"description": "Create a new task or import templates to inspire your guests.",
"cta": "Create first task"
}
},
"billingWarning": {
"title": "Needs attention",
"description": "Package alerts and limits you should keep an eye on."
},
"eventForm": {
"errors": {
"nameRequired": "Please enter an event name.",
"typeRequired": "Please select an event type."
},
"titles": {
"create": "Create event",
"edit": "Edit event"
},
"subtitle": "Fill in the essentials and share your event with guests.",
"sections": {
"details": {
"title": "Event details",
"description": "Name, URL, and date define how guests see your event."
}
},
"fields": {
"name": {
"label": "Event name",
"placeholder": "e.g. Summer Party 2025",
"help": "The slug and event URL are generated from the name."
},
"date": {
"label": "Date"
},
"type": {
"label": "Event type",
"loading": "Loading event types…",
"placeholder": "Select event type",
"empty": "No event types available yet. Please add one in the admin area."
},
"publish": {
"label": "Publish immediately",
"help": "Enable if guests should see the event right away. You can change the status later."
}
},
"actions": {
"backToList": "Back to list",
"saving": "Saving",
"save": "Save",
"cancel": "Cancel"
},
"errors": {
"notice": "Notice"
}
},
"notifications": {
"trigger": "Notifications",
"title": "Notifications",
"empty": "All clear",
"empty.message": "All caught up — well notify you about updates.",
"action": {
"dismiss": "Dismiss",
"refresh": "Load new alerts"
},
"noEvents": {
"title": "Lets get started",
"description": "Create your first event to unlock uploads, tasks, and invites.",
"cta": "Create event"
},
"draftEvent": {
"title": "Event still a draft",
"description": "Publish to enable invites and the gallery.",
"cta": "Open event"
},
"upcomingEvent": {
"title": "Event starts soon",
"description_today": "Todays event — check uploads and tasks.",
"description_days": "{{count}} days left — prepare invites and tasks.",
"cta": "Open event"
},
"pendingUploads": {
"title": "Uploads awaiting review",
"description": "{{count}} new uploads need moderation.",
"cta": "Open uploads"
},
"newPhotos": {
"title": "New photos arrived",
"description": "{{count}} uploads are waiting for you.",
"cta": "Open gallery",
"ctaFallback": "View events"
}
}
}