feat(loyalty): add full i18n support for all loyalty module pages

Replace hardcoded English strings across all 22 templates, 10 JS files,
and 4 locale files (en/fr/de/lb) with ~300 translation keys per language.
Uses server-side _() for Jinja2 templates and I18n.t() for JS toast
messages and dynamic Alpine.js expressions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-13 19:53:17 +01:00
parent 826ef2ddd2
commit 694a1cd1a5
37 changed files with 2916 additions and 563 deletions

View File

@@ -96,5 +96,589 @@
"title": "Treueprogramm erstellen",
"description": "Erstellen Sie Ihr erstes Stempel- oder Punkteprogramm"
}
},
"enrollment": {
"title": "Treten Sie unserem Prämienprogramm bei!",
"subtitle": "Verdienen Sie {points} Punkt pro ausgegebenem EUR",
"not_available_title": "Programm nicht verfügbar",
"not_available_message": "Dieser Shop hat noch kein Treueprogramm eingerichtet.",
"welcome_bonus": "Erhalten Sie {points} Bonuspunkte bei der Anmeldung!",
"already_member": "Bereits Mitglied? Ihre Punkte sind mit Ihrer E-Mail verknüpft.",
"form": {
"email": "E-Mail",
"first_name": "Vorname",
"last_name": "Nachname",
"phone": "Telefon (optional)",
"birthday": "Geburtstag (optional)",
"birthday_hint": "Für besondere Geburtstagsbelohnungen",
"terms_agree": "Ich stimme den",
"terms": "Allgemeinen Geschäftsbedingungen",
"marketing_consent": "Neuigkeiten und Sonderangebote senden",
"joining": "Anmeldung läuft...",
"join_button": "Beitreten & {points} Punkte erhalten"
},
"privacy_policy": "Datenschutzrichtlinie",
"close": "Schließen",
"success": {
"title": "Willkommen!",
"message": "Sie sind jetzt Mitglied unseres Prämienprogramms.",
"card_number": "Ihre Kartennummer",
"wallet_prompt": "Speichern Sie Ihre Karte auf Ihrem Handy für einfachen Zugriff:",
"next_steps_title": "Wie geht es weiter?",
"step_earn": "Zeigen Sie Ihre Kartennummer beim Einkauf, um Punkte zu sammeln",
"step_balance": "Prüfen Sie Ihren Kontostand online oder in der App",
"step_redeem": "Lösen Sie Punkte gegen Prämien an allen unseren Standorten ein",
"view_dashboard": "Mein Treue-Dashboard anzeigen",
"continue_shopping": "Weiter einkaufen"
},
"errors": {
"load_failed": "Programminformationen konnten nicht geladen werden",
"email_exists": "Diese E-Mail ist bereits in unserem Treueprogramm registriert.",
"failed": "Anmeldung fehlgeschlagen. Bitte versuchen Sie es erneut."
}
},
"common": {
"active": "Aktiv",
"inactive": "Inaktiv",
"cancel": "Abbrechen",
"save": "Speichern",
"delete": "Löschen",
"confirm": "Bestätigen",
"refresh": "Aktualisieren",
"loading": "Laden...",
"saving": "Speichern...",
"view": "Anzeigen",
"edit": "Bearbeiten",
"yes": "Ja",
"no": "Nein",
"none": "Keine",
"never": "Nie",
"total": "GESAMT",
"continue": "Weiter",
"back": "Zurück",
"points": "Punkte",
"minutes": "Minuten",
"or": "oder",
"at": "bei"
},
"transactions": {
"card_created": "Angemeldet",
"welcome_bonus": "Willkommensbonus",
"stamp_earned": "Stempel erhalten",
"stamp_redeemed": "Stempel eingelöst",
"stamp_voided": "Stempel storniert",
"stamp_adjustment": "Stempel angepasst",
"points_earned": "Punkte verdient",
"points_redeemed": "Punkte eingelöst",
"points_voided": "Punkte storniert",
"points_adjustment": "Punkte angepasst",
"points_expired": "Punkte verfallen",
"card_deactivated": "Deaktiviert",
"reward_redeemed": "Prämie eingelöst"
},
"shared": {
"analytics": {
"total_programs": "Programme insgesamt",
"total_members": "Mitglieder insgesamt",
"active_members": "Aktive Mitglieder",
"points_issued_30d": "Punkte vergeben (30T)",
"transactions_30d": "Transaktionen (30T)",
"x_active": "{count} aktiv",
"points_overview": "Punkteübersicht",
"points_issued_vs_redeemed": "Punkte vergeben vs eingelöst (30T)",
"issued": "Vergeben:",
"redeemed": "Eingelöst:",
"redemption_rate": "Einlösungsrate",
"outstanding_balance": "Ausstehender Saldo",
"member_activity": "Mitgliederaktivität",
"active_members_30d": "Aktive Mitglieder (30T)",
"new_this_month": "Neu diesen Monat",
"merchants_with_programs": "Händler mit Programmen",
"avg_points_per_member": "Durchschn. Punkte pro Mitglied",
"all_time_statistics": "Gesamtstatistiken",
"total_points_issued": "Punkte insgesamt vergeben",
"total_points_redeemed": "Punkte insgesamt eingelöst",
"points_redeemed_30d": "Punkte eingelöst (30T)",
"outstanding_liability": "Ausstehende Verbindlichkeit",
"location_breakdown": "Aufschlüsselung nach Standort",
"store": "Geschäft",
"enrolled": "Angemeldet",
"points_earned": "Punkte verdient",
"points_redeemed": "Punkte eingelöst"
},
"program_view": {
"program_configuration": "Programmkonfiguration",
"program_name": "Programmname",
"card_name": "Kartenname",
"stamps_configuration": "Stempelkonfiguration",
"stamps_target": "Stempelziel",
"reward_description": "Prämienbeschreibung",
"reward_value": "Prämienwert",
"points_configuration": "Punktekonfiguration",
"points_per_eur": "Punkte pro EUR",
"welcome_bonus": "Willkommensbonus",
"x_points": "{count} Punkte",
"minimum_redemption": "Mindesteinlösung",
"minimum_purchase": "Mindesteinkauf",
"points_expiration": "Punkteverfall",
"x_days_inactivity": "{days} Tage Inaktivität",
"redemption_rewards": "Einlösungsprämien",
"reward": "Prämie",
"points_required": "Benötigte Punkte",
"description": "Beschreibung",
"anti_fraud": "Betrugsschutz",
"cooldown": "Wartezeit",
"x_minutes": "{count} Minuten",
"max_daily_stamps": "Max. Stempel pro Tag",
"staff_pin_required": "Mitarbeiter-PIN erforderlich",
"branding": "Branding",
"primary_color": "Primärfarbe",
"secondary_color": "Sekundärfarbe",
"logo_url": "Logo-URL",
"hero_image_url": "Hintergrundbild-URL",
"terms_privacy": "AGB & Datenschutz",
"terms_conditions": "Allgemeine Geschäftsbedingungen",
"privacy_policy_url": "Datenschutzrichtlinien-URL"
},
"program_form": {
"program_type": "Programmtyp",
"points_type_desc": "Punkte pro ausgegebenem EUR verdienen",
"stamps_type_desc": "N Stempel sammeln, Prämie erhalten",
"hybrid_type_desc": "Stempel und Punkte kombiniert",
"stamps_configuration": "Stempelkonfiguration",
"stamps_target": "Stempelziel",
"stamps_target_help": "Anzahl der Stempel für die Prämie",
"reward_description": "Prämienbeschreibung",
"reward_value_cents": "Prämienwert (Cent)",
"points_configuration": "Punktekonfiguration",
"points_per_eur": "Punkte pro ausgegebenem EUR",
"eur_equals_points": "1 EUR = {points} Punkt(e)",
"welcome_bonus_points": "Willkommensbonuspunkte",
"welcome_bonus_help": "Bonuspunkte bei der Anmeldung",
"minimum_redemption_points": "Mindesteinlösungspunkte",
"minimum_purchase_cents": "Mindesteinkauf (Cent)",
"minimum_purchase_help": "Mindesteinkaufsbetrag zum Punktesammeln (0 = kein Minimum)",
"points_expiration_days": "Punkteverfall (Tage)",
"points_expiration_help": "Tage der Inaktivität bis zum Punkteverfall (0 = nie)",
"redemption_rewards": "Einlösungsprämien",
"add_reward": "Prämie hinzufügen",
"no_rewards_configured": "Keine Prämien konfiguriert. Fügen Sie eine Prämie hinzu, damit Kunden Punkte einlösen können.",
"reward_name": "Prämienname",
"points_required": "Benötigte Punkte",
"description": "Beschreibung",
"anti_fraud_settings": "Betrugsschutz-Einstellungen",
"cooldown_minutes": "Wartezeit (Minuten)",
"cooldown_help": "Zeit zwischen Stempeln derselben Karte",
"max_daily_stamps": "Max. Stempel pro Tag",
"max_daily_stamps_help": "Maximale Stempel pro Karte pro Tag",
"require_staff_pin": "Mitarbeiter-PIN verlangen",
"branding": "Branding",
"card_name": "Kartenname",
"primary_color": "Primärfarbe",
"secondary_color": "Sekundärfarbe",
"logo_url": "Logo-URL",
"logo_url_help": "Erforderlich für Google Wallet-Integration. Muss eine öffentlich zugängliche Bild-URL sein (PNG oder JPG).",
"hero_image_url": "Hintergrundbild-URL",
"terms_privacy": "AGB & Datenschutz",
"terms_conditions": "Allgemeine Geschäftsbedingungen",
"privacy_policy_url": "Datenschutzrichtlinien-URL",
"program_status": "Programmstatus",
"program_active": "Programm aktiv",
"program_active_help": "Deaktiviert können Kunden weder sammeln noch einlösen",
"delete_program": "Programm löschen",
"create_program": "Programm erstellen",
"save_changes": "Änderungen speichern"
}
},
"admin": {
"programs": {
"title": "Treueprogramme",
"create_program": "Programm erstellen",
"loading": "Treueprogramme werden geladen...",
"error_loading": "Fehler beim Laden der Treueprogramme",
"total_programs": "Programme insgesamt",
"active": "Aktiv",
"total_members": "Mitglieder insgesamt",
"transactions_30d": "Transaktionen (30T)",
"search_placeholder": "Nach Händlername suchen...",
"all_status": "Alle Status",
"table_merchant": "Händler",
"table_program_type": "Programmtyp",
"table_members": "Mitglieder",
"table_points_issued": "Punkte vergeben",
"table_status": "Status",
"table_created": "Erstellt",
"table_actions": "Aktionen",
"no_programs": "Keine Treueprogramme gefunden",
"adjust_filters": "Versuchen Sie, Ihre Suche oder Filter anzupassen",
"no_merchants_yet": "Noch keine Händler haben Treueprogramme erstellt",
"x_active": "({count} aktiv)",
"x_redeemed": "{count} eingelöst",
"pt_per_eur": "Pkt/EUR",
"delete_title": "Treueprogramm löschen",
"delete_message": "Treueprogramm für \"{name}\" löschen? Alle zugehörigen Daten (Karten, Transaktionen, Prämien) werden dauerhaft gelöscht. Dies kann nicht rückgängig gemacht werden.",
"delete_confirm": "Programm löschen",
"create_title": "Treueprogramm erstellen",
"create_description": "Wählen Sie einen Händler, um ein Treueprogramm zu erstellen.",
"search_merchant": "Händler suchen",
"type_merchant_name": "Händlername eingeben...",
"no_merchants_found": "Keine Händler gefunden",
"existing_program_warning": "Dieser Händler hat bereits ein Treueprogramm.",
"view_edit_existing": "Bestehendes Programm anzeigen / bearbeiten"
},
"merchant_detail": {
"title": "Händler-Treuedetails",
"loading": "Treuedetails werden geladen...",
"error_loading": "Fehler beim Laden der Händlertreue",
"program_active": "Treueprogramm aktiv",
"no_program_subtitle": "Kein Treueprogramm",
"quick_actions": "Schnellaktionen",
"edit_program": "Programm bearbeiten",
"admin_policy": "Admin-Richtlinie",
"view_merchant": "Händler anzeigen",
"total_members": "Mitglieder insgesamt",
"active_30d": "Aktiv (30T)",
"points_issued_30d": "Punkte vergeben (30T)",
"points_redeemed_30d": "Punkte eingelöst (30T)",
"no_program": "Kein Treueprogramm",
"no_program_desc": "Dieser Händler hat noch kein Treueprogramm eingerichtet.",
"create_program": "Programm erstellen",
"delete_title": "Treueprogramm löschen",
"delete_message": "Das Treueprogramm und alle zugehörigen Daten werden dauerhaft gelöscht. Dies kann nicht rückgängig gemacht werden.",
"delete_confirm": "Programm löschen",
"location_breakdown": "Aufschlüsselung nach Standort",
"table_location": "Standort",
"table_enrolled": "Angemeldet",
"table_points_earned": "Punkte verdient",
"table_points_redeemed": "Punkte eingelöst",
"table_transactions_30d": "Transaktionen (30T)",
"admin_policy_settings": "Admin-Richtlinieneinstellungen",
"staff_pin_policy": "Mitarbeiter-PIN-Richtlinie",
"self_enrollment": "Selbstanmeldung",
"cross_location_redemption": "Standortübergreifende Einlösung",
"allowed": "Erlaubt",
"disabled": "Deaktiviert",
"modify_policy": "Admin-Richtlinie ändern"
},
"merchant_settings": {
"title": "Händler-Treueeinstellungen",
"loading": "Einstellungen werden geladen...",
"error_loading": "Fehler beim Laden der Einstellungen",
"admin_controlled": "Admin-kontrollierte Einstellungen für das Treueprogramm dieses Händlers",
"staff_pin_policy": "Mitarbeiter-PIN-Richtlinie",
"staff_pin_description": "Legen Sie fest, ob Mitarbeiter einen PIN eingeben müssen, um Treuetransaktionen zu verarbeiten.",
"required": "Erforderlich",
"required_desc": "Mitarbeiter müssen ihren PIN bei jeder Transaktion eingeben. Empfohlen für die Sicherheit.",
"optional": "Optional",
"optional_desc": "Geschäfte können wählen, ob PINs erforderlich sind.",
"pin_disabled": "Deaktiviert",
"pin_disabled_desc": "Mitarbeiter-PINs werden nicht verwendet. Jeder Mitarbeiter kann Transaktionen verarbeiten.",
"pin_lockout_settings": "PIN-Sperreinstellungen",
"max_failed_attempts": "Max. Fehlversuche",
"max_failed_attempts_help": "Anzahl falscher Versuche vor Sperrung (3-10)",
"lockout_duration": "Sperrdauer (Minuten)",
"lockout_duration_help": "Sperrdauer nach Fehlversuchen (5-120 Minuten)",
"enrollment_settings": "Anmeldeeinstellungen",
"allow_self_enrollment": "Selbstanmeldung erlauben",
"self_enrollment_desc": "Kunden können sich per QR-Code ohne Personal anmelden",
"transaction_settings": "Transaktionseinstellungen",
"allow_cross_location": "Standortübergreifende Einlösung erlauben",
"cross_location_desc": "Kunden können Punkte an allen Standorten des Händlers einlösen",
"allow_void": "Stornierungen erlauben",
"void_desc": "Mitarbeiter können Punkte/Stempel bei Rückgaben stornieren",
"save_settings": "Einstellungen speichern"
},
"analytics": {
"title": "Treue-Analytik",
"subtitle": "Plattformweite Treueprogramm-Statistiken",
"loading": "Analytik wird geladen...",
"error_loading": "Fehler beim Laden der Analytik",
"filter_by_merchant": "Nach Händler filtern",
"search_merchants_placeholder": "Händler nach Name suchen...",
"showing_stats_for": "Statistiken für:",
"wallet_status": "Wallet-Integrationsstatus",
"google_wallet": "Google Wallet",
"apple_wallet": "Apple Wallet",
"connected": "Verbunden",
"error": "Fehler",
"not_configured": "Nicht konfiguriert",
"issuer_id": "Aussteller-ID",
"project": "Projekt",
"wallet_objects": "Wallet-Objekte",
"loyalty_classes": "Treueklassen",
"pass_type_id": "Pass-Typ-ID",
"team_id": "Team-ID",
"active_passes": "Aktive Pässe",
"quick_actions": "Schnellaktionen",
"view_all_programs": "Alle Programme anzeigen",
"manage_merchants": "Händler verwalten"
},
"program_edit": {
"title": "Programmkonfiguration",
"loading": "Konfiguration wird geladen...",
"error_loading": "Fehler beim Laden der Programmkonfiguration",
"create_subtitle": "Treueprogramm für diesen Händler erstellen",
"edit_subtitle": "Programmkonfiguration bearbeiten",
"delete_title": "Treueprogramm löschen",
"delete_message": "Das Treueprogramm und alle zugehörigen Daten (Karten, Transaktionen, Prämien) werden dauerhaft gelöscht. Dies kann nicht rückgängig gemacht werden.",
"delete_confirm": "Programm löschen"
}
},
"merchant": {
"program": {
"title": "Treueprogramm",
"subtitle": "Ihre Treueprogramm-Konfiguration.",
"edit_program": "Programm bearbeiten",
"no_program": "Kein Treueprogramm",
"no_program_desc": "Ihr Treueprogramm wurde noch nicht eingerichtet. Erstellen Sie eines, um Ihre Kunden zu belohnen.",
"create_program": "Programm erstellen"
},
"program_edit": {
"title": "Treue-Einstellungen",
"page_title": "Treueprogramm-Einstellungen",
"subtitle": "Konfigurieren Sie Ihr Treueprogramm",
"loading": "Einstellungen werden geladen...",
"error_loading": "Fehler beim Laden der Einstellungen",
"delete_title": "Treueprogramm löschen",
"delete_message": "Ihr Treueprogramm und alle zugehörigen Daten (Karten, Transaktionen, Prämien) werden dauerhaft gelöscht. Dies kann nicht rückgängig gemacht werden.",
"delete_confirm": "Programm löschen"
},
"analytics": {
"title": "Treue-Analytik",
"subtitle": "Treueprogramm-Statistiken für alle Ihre Geschäfte",
"loading": "Analytik wird geladen...",
"error_loading": "Fehler beim Laden der Analytik",
"no_program": "Kein Treueprogramm",
"no_program_desc": "Richten Sie ein Treueprogramm ein, um hier Analytik zu sehen.",
"create_program": "Programm erstellen",
"quick_actions": "Schnellaktionen",
"view_program": "Programm anzeigen",
"edit_program": "Programm bearbeiten"
}
},
"store": {
"terminal": {
"title": "Treue-Terminal",
"subtitle": "Treuetransaktionen verarbeiten",
"members": "Mitglieder",
"analytics": "Analytik",
"loading": "Treue-Terminal wird geladen...",
"error_loading": "Fehler beim Laden des Terminals",
"not_setup": "Treueprogramm nicht eingerichtet",
"not_setup_desc": "Ihr Händler hat noch kein Treueprogramm konfiguriert.",
"setup_program": "Treueprogramm einrichten",
"contact_admin": "Kontaktieren Sie Ihren Administrator, um die Einrichtung abzuschließen.",
"find_customer": "Kunde finden",
"search_placeholder": "E-Mail, Telefon oder Kartennummer...",
"looking_up": "Suche läuft...",
"look_up_customer": "Kunde suchen",
"enroll_new_customer": "Neuen Kunden anmelden",
"customer_found": "Kunde gefunden",
"points_balance": "Punktestand",
"stamps": "Stempel",
"x_more_for_reward": "Noch {count} für Prämie",
"ready_to_redeem": "Bereit zum Einlösen!",
"add_stamp": "Stempel hinzufügen",
"current": "Aktuell:",
"cooldown_active": "Wartezeit aktiv",
"redeem_stamps": "Stempel einlösen",
"not_enough_stamps": "Noch nicht genug Stempel",
"earn_points": "Punkte sammeln",
"purchase_amount": "Einkaufsbetrag",
"points_to_award": "Zu vergebende Punkte:",
"award_points": "Punkte vergeben",
"redeem_reward": "Prämie einlösen",
"select_reward": "Prämie auswählen",
"select_reward_placeholder": "Prämie auswählen...",
"points_after": "Punkte danach:",
"search_to_process": "Suchen Sie einen Kunden, um eine Transaktion zu verarbeiten",
"recent_transactions": "Letzte Transaktionen an diesem Standort",
"table_time": "Zeit",
"table_customer": "Kunde",
"table_type": "Typ",
"table_points": "Punkte",
"table_notes": "Notizen",
"no_recent_transactions": "Keine aktuellen Transaktionen",
"enter_staff_pin": "Mitarbeiter-PIN eingeben",
"pin_authorize": "Geben Sie Ihren Mitarbeiter-PIN ein, um diese Transaktion zu autorisieren.",
"clear": "Löschen",
"processing": "Verarbeitung...",
"customer_not_found": "Kunde nicht gefunden. Sie können ihn als neues Mitglied anmelden.",
"error_lookup": "Fehler bei der Kundensuche: {message}",
"transaction_failed": "Transaktion fehlgeschlagen: {message}",
"stamp_added": "Stempel hinzugefügt!",
"stamps_redeemed": "Stempel eingelöst! Prämie erhalten.",
"x_points_awarded": "{points} Punkte vergeben!",
"reward_redeemed": "Prämie eingelöst: {name}"
},
"cards": {
"title": "Treue-Mitglieder",
"subtitle": "Mitglieder Ihres Treueprogramms anzeigen und verwalten",
"enroll_new": "Anmelden",
"loading": "Mitglieder werden geladen...",
"error_loading": "Fehler beim Laden der Mitglieder",
"total_members": "Mitglieder insgesamt",
"active_30d": "Aktiv (30T)",
"new_this_month": "Neu diesen Monat",
"total_points_balance": "Gesamtpunktestand",
"search_placeholder": "Nach Name, E-Mail, Telefon oder Karte suchen...",
"all_status": "Alle Status",
"table_member": "Mitglied",
"table_card_number": "Kartennummer",
"table_points_balance": "Punktestand",
"table_last_activity": "Letzte Aktivität",
"table_status": "Status",
"table_actions": "Aktionen",
"no_members": "Keine Mitglieder gefunden",
"adjust_search": "Versuchen Sie, Ihre Suche anzupassen",
"enroll_first": "Melden Sie Ihren ersten Kunden an"
},
"card_detail": {
"title": "Mitgliederdetails",
"loading": "Mitgliederdetails werden geladen...",
"error_loading": "Fehler beim Laden des Mitglieds",
"points_balance": "Punktestand",
"total_earned": "Insgesamt verdient",
"total_redeemed": "Insgesamt eingelöst",
"member_since": "Mitglied seit",
"customer_information": "Kundeninformation",
"name": "Name",
"email": "E-Mail",
"phone": "Telefon",
"birthday": "Geburtstag",
"card_details": "Kartendetails",
"card_number": "Kartennummer",
"status": "Status",
"last_activity": "Letzte Aktivität",
"enrolled_at": "Angemeldet am",
"transaction_history": "Transaktionsverlauf",
"table_date": "Datum",
"table_type": "Typ",
"table_points": "Punkte",
"table_location": "Standort",
"table_notes": "Notizen",
"no_transactions": "Noch keine Transaktionen"
},
"enroll": {
"title": "Kunde anmelden",
"page_title": "Neuen Kunden anmelden",
"subtitle": "Neues Mitglied zu Ihrem Treueprogramm hinzufügen",
"loading": "Laden...",
"error_loading": "Fehler beim Laden des Anmeldeformulars",
"customer_information": "Kundeninformation",
"first_name": "Vorname",
"last_name": "Nachname",
"email": "E-Mail",
"phone": "Telefon",
"birthday": "Geburtstag",
"birthday_help": "Für Geburtstagsbelohnungen (optional)",
"communication_preferences": "Kommunikationseinstellungen",
"send_emails": "Werbe-E-Mails senden",
"send_sms": "Werbe-SMS senden",
"welcome_bonus": "Willkommensbonus",
"welcome_bonus_desc": "Kunde erhält {points} Bonuspunkte!",
"enroll_customer": "Kunde anmelden",
"enrolling": "Anmeldung...",
"customer_enrolled": "Kunde angemeldet!",
"starting_balance": "Anfangssaldo:",
"x_points": "{count} Punkte",
"back_to_terminal": "Zurück zum Terminal",
"enroll_another": "Weiteren anmelden",
"enrollment_failed": "Anmeldung fehlgeschlagen: {message}"
},
"analytics": {
"title": "Treue-Analytik",
"subtitle": "Verfolgen Sie die Leistung Ihres Treueprogramms",
"loading": "Analytik wird geladen...",
"error_loading": "Fehler beim Laden der Analytik",
"quick_actions": "Schnellaktionen",
"open_terminal": "Terminal öffnen",
"view_members": "Mitglieder anzeigen",
"view_program": "Programm anzeigen"
},
"program": {
"title": "Treueprogramm",
"subtitle": "Ihre Treueprogramm-Konfiguration",
"edit_program": "Programm bearbeiten",
"loading": "Programm wird geladen...",
"error_loading": "Fehler beim Laden des Programms",
"no_program": "Kein Treueprogramm",
"no_program_desc": "Ihr Händler hat noch kein Treueprogramm konfiguriert.",
"create_program": "Programm erstellen",
"contact_admin": "Kontaktieren Sie Ihren Administrator, um ein Treueprogramm einzurichten."
},
"settings": {
"title": "Treue-Einstellungen",
"page_title": "Treueprogramm-Einstellungen",
"subtitle": "Konfigurieren Sie Ihr Treueprogramm",
"back_to_program": "Zurück zum Programm",
"loading": "Einstellungen werden geladen...",
"error_loading": "Fehler beim Laden der Einstellungen",
"access_restricted": "Zugriff eingeschränkt",
"owner_only": "Nur der Geschäftsinhaber kann die Treueprogramm-Einstellungen verwalten.",
"delete_title": "Treueprogramm löschen",
"delete_message": "Das Treueprogramm und alle zugehörigen Daten (Karten, Transaktionen, Prämien) werden dauerhaft gelöscht. Dies kann nicht rückgängig gemacht werden.",
"delete_confirm": "Programm löschen",
"program_created": "Programm erfolgreich erstellt",
"program_updated": "Programm erfolgreich aktualisiert",
"program_deleted": "Treueprogramm gelöscht",
"save_failed": "Speichern fehlgeschlagen: {message}",
"delete_failed": "Löschen fehlgeschlagen: {message}"
}
},
"storefront": {
"dashboard": {
"back_to_account": "Zurück zum Konto",
"my_loyalty": "Meine Treue",
"join_title": "Treten Sie unserem Prämienprogramm bei!",
"join_subtitle": "Sammeln Sie Punkte bei jedem Einkauf und lösen Sie sie gegen Prämien ein.",
"join_now": "Jetzt beitreten",
"points_balance": "Punktestand",
"card_number": "Kartennummer",
"show_card": "Karte anzeigen",
"total_earned": "Insgesamt verdient",
"total_redeemed": "Insgesamt eingelöst",
"available_rewards": "Verfügbare Prämien",
"no_rewards_yet": "Noch keine Prämien verfügbar",
"ready_to_redeem": "Bereit zum Einlösen",
"x_more_to_go": "Noch {count}",
"redeem_hint": "Zeigen Sie Ihre Karte dem Personal, um Prämien im Geschäft einzulösen.",
"recent_activity": "Letzte Aktivität",
"view_all": "Alle anzeigen",
"no_transactions": "Noch keine Transaktionen. Machen Sie einen Einkauf, um Punkte zu sammeln!",
"earn_redeem_locations": "Sammel- & Einlöse-Standorte",
"your_loyalty_card": "Ihre Treuekarte",
"show_to_staff": "Zeigen Sie dies dem Personal beim Einkauf oder Einlösen von Prämien."
},
"history": {
"back_to_loyalty": "Zurück zur Treue",
"title": "Transaktionsverlauf",
"subtitle": "Alle Ihre Treuepunkttransaktionen anzeigen",
"current_balance": "Aktueller Saldo",
"total_earned": "Insgesamt verdient",
"total_redeemed": "Insgesamt eingelöst",
"no_transactions": "Noch keine Transaktionen",
"balance": "Saldo:",
"previous": "Zurück",
"next": "Weiter",
"page_x_of_y": "Seite {page} von {pages}"
}
},
"toasts": {
"program_activated": "Programm erfolgreich aktiviert",
"program_deactivated": "Programm erfolgreich deaktiviert",
"activate_failed": "Programm konnte nicht aktiviert werden: {message}",
"deactivate_failed": "Programm konnte nicht deaktiviert werden: {message}",
"program_deleted": "Programm erfolgreich gelöscht",
"delete_failed": "Programm konnte nicht gelöscht werden: {message}",
"program_created": "Programm erfolgreich erstellt",
"program_updated": "Programm erfolgreich aktualisiert",
"loyalty_program_created": "Treueprogramm erstellt",
"loyalty_program_deleted": "Treueprogramm gelöscht",
"settings_saved": "Einstellungen erfolgreich gespeichert",
"save_failed": "Speichern fehlgeschlagen: {message}",
"settings_save_failed": "Einstellungen konnten nicht gespeichert werden: {message}",
"create_failed": "Programm konnte nicht erstellt werden: {message}",
"logo_required": "Logo-URL ist für die Wallet-Integration erforderlich."
}
}