/* =====================================================================
i18n-rabattcodes.js — Übersetzungs-Wörterbuch NUR für rabattcodes.html
Alle 5 Sprachen vollständig gepflegt (de, de-CH, en, fr, pt).
⚠️ ZWEI EINSETZWEGE, ZWEI SCHREIBWEISEN FÜR "&" (siehe main.js,
applyTranslations):
data-i18n="schluessel" -> el.innerHTML = text
Dort gehört "&" hin.
data-i18n-attr="alt:schluessel" -> el.setAttribute(...)
Dort gehört ein blankes "&" hin;
"&" stünde wörtlich im
Vorlesetext.
Betroffen ist hier genau ein Eintrag: rc_logo_alt (Attribut, blankes
"&"). Der Markenname selbst steht bewusst NICHT im Wörterbuch — "Van's
DIY & Bastelbedarf" heißt in jeder Sprache gleich.
===================================================================== */
window.I18N_PAGE = {
rc_eyebrow: {
de: "🔒 Nur mit Konto", "de-CH": "🔒 Nur mit Konto",
en: "🔒 Account required", fr: "🔒 Compte requis", pt: "🔒 Requer conta",
},
rc_h1: {
de: "Rabattcodes", "de-CH": "Rabattcodes",
en: "Discount Codes", fr: "Codes de réduction", pt: "Códigos de desconto",
},
rc_lead: {
de: "Codes von Dogis Partnern — für alle mit einem Konto im DOGFATHER UNIVERSE.",
"de-CH": "Codes vo Dogis Partner — für alli mit eme Konto im DOGFATHER UNIVERSE.",
en: "Codes from Dogi's partners — for everyone with a DOGFATHER UNIVERSE account.",
fr: "Des codes chez les partenaires de Dogi — pour toute personne ayant un compte DOGFATHER UNIVERSE.",
pt: "Códigos dos parceiros do Dogi — para todos com uma conta no DOGFATHER UNIVERSE.",
},
rc_gesperrt_titel: {
de: "Melde dich an, dann sind sie da",
"de-CH": "Meld di aa, denn sind si da",
en: "Sign in and they're right here",
fr: "Connecte-toi et ils sont là",
pt: "Inicia sessão e estão aqui",
},
/* Zweimal angepasst, beide Male weil der Satz nicht mehr stimmte:
08.09.2026 früh endete er auf "sobald die ersten Kooperationen live
sind" — die erste WAR ab da live. Am selben Tag hat Filipe die Sperre
vom Abo auf das Konto umgestellt; seither wäre "exklusiver Vorteil
der DogiCrew" schlicht falsch. Der Text nennt jetzt genau die eine
Bedingung, die wirklich gilt, und dass sie nichts kostet. */
rc_gesperrt_text: {
de: "Die Rabattcodes gibt es für alle mit einem Konto bei Dogfather — Registrieren ist kostenlos und dauert eine Minute. Der erste Partnercode wartet schon.",
"de-CH": "D Rabattcodes gits für alli mit eme Konto bi Dogfather — Registriere isch gratis und duuret e Minute. De erst Partnercode wartet scho.",
en: "Discount codes are there for everyone with a Dogfather account — signing up is free and takes a minute. The first partner code is already waiting.",
fr: "Les codes de réduction sont là pour toute personne ayant un compte Dogfather — l'inscription est gratuite et prend une minute. Le premier code partenaire attend déjà.",
pt: "Os códigos de desconto existem para todos com uma conta Dogfather — registares-te é gratuito e demora um minuto. O primeiro código de parceiro já está à espera.",
},
rc_btn_anmelden: {
de: "Anmelden oder kostenlos registrieren",
"de-CH": "Aamelde oder gratis registriere",
en: "Sign in or register for free",
fr: "Se connecter ou s'inscrire gratuitement",
pt: "Iniciar sessão ou registar gratuitamente",
},
rc_btn_abo: {
de: "Supporter werden 👑", "de-CH": "Supporter werde 👑",
en: "Become a supporter 👑", fr: "Devenir Supporter 👑", pt: "Tornar-se apoiador 👑",
},
/* Ohne diese Zeile wäre der zweite Knopf eine Falle: Das bezahlte Abo
ist noch nicht freigeschaltet (abonnieren.html zeigt dort "Coming
soon…", bis Dogis PayPal-Business-Zugang steht). Wer ihn drückt,
soll vorher wissen, was ihn erwartet — und dass er für die Codes
nicht nötig ist. */
rc_abo_hinweis: {
de: "Fürs Abo brauchst du ebenfalls erst ein Konto — es startet, sobald es offiziell live geht.",
"de-CH": "Fürs Abo bruuchsch au zerscht es Konto — es startet, sobald es offiziell live gaht.",
en: "The subscription needs an account too — it starts as soon as it officially goes live.",
fr: "L'abonnement nécessite lui aussi un compte — il démarre dès son lancement officiel.",
pt: "A subscrição também precisa de uma conta — arranca assim que ficar oficialmente disponível.",
},
/* ---- Erster Partner: Van's DIY & Bastelbedarf (DOGI10) ---------- */
rc_band: {
de: "Partner Nr. 1", "de-CH": "Partner Nr. 1",
en: "Partner no. 1", fr: "Partenaire n° 1", pt: "Parceiro n.º 1",
},
/* Attribut-Eintrag: blankes "&", siehe Kopf dieser Datei. */
rc_logo_alt: {
de: "Logo von Van's DIY & Bastelbedarf",
"de-CH": "Logo vo Van's DIY & Bastelbedarf",
en: "Logo of Van's DIY & Bastelbedarf",
fr: "Logo de Van's DIY & Bastelbedarf",
pt: "Logótipo de Van's DIY & Bastelbedarf",
},
/* Die aufgezählten Warengruppen sind die echten Kategorien des Shops
(src/content/categories/), nicht das, was man bei "Bastelbedarf"
vermuten würde: Bastelzubehör, Häkelzubehör, DIY Häkelwerke, DIY
Plushies, DIY Modeschmuck & Accessoires, Mystery-Pakete. */
rc_beschreibung: {
de: "Häkelzubehör, Bastelbedarf, DIY-Plushies und Modeschmuck — VanVans eigener Shop.",
"de-CH": "Häkelzubehör, Bastelbedarf, DIY-Plushies und Modeschmuck — VanVans eigene Shop.",
en: "Crochet supplies, craft materials, DIY plushies and handmade jewellery — VanVan's own shop.",
fr: "Accessoires de crochet, matériel de bricolage, peluches DIY et bijoux — la boutique de VanVan.",
pt: "Acessórios de crochet, material de artesanato, plushies DIY e bijutaria — a loja da VanVan.",
},
rc_code_kopf: {
de: "Dein Code", "de-CH": "Din Code",
en: "Your code", fr: "Ton code", pt: "O teu código",
},
rc_code_fuss: {
de: "Tippen zum Kopieren", "de-CH": "Tippe zum Kopiere",
en: "Tap to copy", fr: "Touche pour copier", pt: "Toca para copiar",
},
rc_code_kopiert: {
de: "Code kopiert ✓", "de-CH": "Code kopiert ✓",
en: "Code copied ✓", fr: "Code copié ✓", pt: "Código copiado ✓",
},
rc_code_fehler: {
de: "Kopieren ging nicht — bitte von Hand abtippen.",
"de-CH": "Kopiere het nöd klappt — bitte vo Hand abtippe.",
en: "Copying didn't work — please type it in by hand.",
fr: "La copie n'a pas fonctionné — saisis-le à la main.",
pt: "A cópia não funcionou — escreve-o à mão.",
},
/* Die drei Konditionen stehen 1:1 so im Shop (partnercodes.json,
Eintrag DOGI10) — nicht aus dem Codenamen geschlossen. */
rc_fakt_rabatt: {
de: "10 % Rabatt auf deinen Einkauf",
"de-CH": "10 % Rabatt uf din Iikauf",
en: "10% off your order",
fr: "10 % de remise sur ta commande",
pt: "10 % de desconto na tua compra",
},
rc_fakt_bis: {
de: "Gültig bis 30.09.2026", "de-CH": "Gültig bis 30.09.2026",
en: "Valid until 30 September 2026", fr: "Valable jusqu'au 30.09.2026", pt: "Válido até 30.09.2026",
},
rc_fakt_sale: {
de: "Nicht auf bereits reduzierte Artikel",
"de-CH": "Nöd uf scho reduzierti Artikel",
en: "Not valid on items that are already reduced",
fr: "Non valable sur les articles déjà réduits",
pt: "Não válido em artigos já reduzidos",
},
rc_abgelaufen: {
de: "Dieser Code ist ausgelaufen. Dogi klärt gerade die Verlängerung — schau bald wieder rein.",
"de-CH": "De Code isch abglaufe. Dogi klärt grad d Verlängerig — lueg bald wieder verbi.",
en: "This code has expired. Dogi is sorting out an extension — check back soon.",
fr: "Ce code a expiré. Dogi s'occupe d'une prolongation — repasse bientôt.",
pt: "Este código expirou. O Dogi está a tratar da renovação — volta em breve.",
},
rc_btn_shop: {
de: "Zum Shop von Van’s DIY ↗", "de-CH": "Zum Shop vo Van’s DIY ↗",
en: "Go to the Van’s DIY shop ↗", fr: "Voir la boutique Van’s DIY ↗", pt: "Ir à loja Van’s DIY ↗",
},
rc_mehr: {
de: "Weitere Codes folgen, sobald die nächsten Kooperationen stehen.",
"de-CH": "Wyteri Codes chömed, sobald die nächste Kooperatione stönd.",
en: "More codes will follow as soon as the next collaborations are in place.",
fr: "D'autres codes suivront dès que les prochaines collaborations seront conclues.",
pt: "Mais códigos seguem assim que as próximas parcerias estiverem fechadas.",
},
rc_btn_zurueck: {
de: "← Zurück zu allen Links", "de-CH": "← Zrugg zu alle Links",
en: "← Back to all links", fr: "← Retour à tous les liens", pt: "← Voltar a todos os links",
},
};