forms.js: Statusmeldungen (Validierung, Erfolg, Mailto-Fallback) i18n-fähig
Die drei bisher hart kodierten deutschen Statustexte in forms.js (Validierungsfehler, Erfolgsmeldung, Mailto-Fallback inkl. Button) laufen jetzt über window.dogiUebersetzen() und wurden in allen 4 Bewerbungsformular-Wörterbüchern (creator/scout/modi/kooperation) für alle 5 Sprachen ergänzt.
This commit is contained in:
+18
-4
@@ -75,9 +75,15 @@ function setupForm(formId, subjectLabel) {
|
|||||||
const fields = [...form.querySelectorAll("input[required], select[required], textarea[required], input[type=email]")];
|
const fields = [...form.querySelectorAll("input[required], select[required], textarea[required], input[type=email]")];
|
||||||
const allValid = fields.map(validateField).every(Boolean);
|
const allValid = fields.map(validateField).every(Boolean);
|
||||||
|
|
||||||
|
// Rein per JS gesetzte Statusmeldungen — Übersetzung über
|
||||||
|
// window.dogiUebersetzen() (siehe main.js), Wörterbuch kommt aus dem
|
||||||
|
// seiteneigenen assets/js/i18n-bewerben-*.js der jeweiligen Seite.
|
||||||
|
// Deutscher Text bleibt Fallback, falls ein Key mal fehlen sollte.
|
||||||
if (!allValid) {
|
if (!allValid) {
|
||||||
if (status) {
|
if (status) {
|
||||||
status.textContent = "Bitte prüfe die markierten Felder — es fehlt noch etwas.";
|
status.textContent = window.dogiUebersetzen
|
||||||
|
? window.dogiUebersetzen("form_error_validation")
|
||||||
|
: "Bitte prüfe die markierten Felder — es fehlt noch etwas.";
|
||||||
status.className = "form-status show error";
|
status.className = "form-status show error";
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
@@ -91,12 +97,20 @@ function setupForm(formId, subjectLabel) {
|
|||||||
|
|
||||||
if (status) {
|
if (status) {
|
||||||
if (delivered) {
|
if (delivered) {
|
||||||
status.innerHTML = `Danke, das sieht super aus! 🩵 Deine Bewerbung ist sicher im Postfach von Team Dogi angekommen.`;
|
status.innerHTML = window.dogiUebersetzen
|
||||||
|
? window.dogiUebersetzen("form_success_delivered")
|
||||||
|
: `Danke, das sieht super aus! 🩵 Deine Bewerbung ist sicher im Postfach von Team Dogi angekommen.`;
|
||||||
status.className = "form-status show success";
|
status.className = "form-status show success";
|
||||||
} else {
|
} else {
|
||||||
const mailto = buildMailto(subjectLabel, data);
|
const mailto = buildMailto(subjectLabel, data);
|
||||||
status.innerHTML = `Danke, das sieht super aus! 🩵 Solange noch kein automatischer Versand eingerichtet ist:
|
const introText = window.dogiUebersetzen
|
||||||
<a href="${mailto}" class="btn btn-outline" style="margin-top:.6rem;">E-Mail jetzt senden</a>`;
|
? window.dogiUebersetzen("form_success_fallback")
|
||||||
|
: `Danke, das sieht super aus! 🩵 Solange noch kein automatischer Versand eingerichtet ist:`;
|
||||||
|
const btnText = window.dogiUebersetzen
|
||||||
|
? window.dogiUebersetzen("form_success_fallback_btn")
|
||||||
|
: "E-Mail jetzt senden";
|
||||||
|
status.innerHTML = `${introText}
|
||||||
|
<a href="${mailto}" class="btn btn-outline" style="margin-top:.6rem;">${btnText}</a>`;
|
||||||
status.className = "form-status show success";
|
status.className = "form-status show success";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -83,4 +83,27 @@ window.I18N_PAGE = {
|
|||||||
fr: "Chercher une autre candidature",
|
fr: "Chercher une autre candidature",
|
||||||
pt: "Procurar outra candidatura",
|
pt: "Procurar outra candidatura",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
form_error_validation: {
|
||||||
|
de: "Bitte prüfe die markierten Felder — es fehlt noch etwas.", "de-CH": "Bitte prüef die markierte Felder — es fehlt no öppis.",
|
||||||
|
en: "Please check the highlighted fields — something's still missing.", fr: "Merci de vérifier les champs signalés — il manque encore quelque chose.", pt: "Verifique os campos destacados — ainda falta algo.",
|
||||||
|
},
|
||||||
|
form_success_delivered: {
|
||||||
|
de: `Danke, das sieht super aus! 🩵 Deine Bewerbung ist sicher im Postfach von Team Dogi angekommen.`,
|
||||||
|
"de-CH": `Danke, das gseht super us! 🩵 Dini Bewerbig isch sicher im Postfach vo Team Dogi acho.`,
|
||||||
|
en: `Thanks, that looks great! 🩵 Your application has safely arrived in Team Dogi's inbox.`,
|
||||||
|
fr: `Merci, ça a l'air génial ! 🩵 Ta candidature est bien arrivée dans la boîte de réception de la Team Dogi.`,
|
||||||
|
pt: `Obrigado, ficou ótimo! 🩵 Sua candidatura chegou com segurança na caixa de entrada da Team Dogi.`,
|
||||||
|
},
|
||||||
|
form_success_fallback: {
|
||||||
|
de: `Danke, das sieht super aus! 🩵 Solange noch kein automatischer Versand eingerichtet ist:`,
|
||||||
|
"de-CH": `Danke, das gseht super us! 🩵 Solang no kei automatischer Versand yrichtet isch:`,
|
||||||
|
en: `Thanks, that looks great! 🩵 As long as automatic delivery isn't set up yet:`,
|
||||||
|
fr: `Merci, ça a l'air génial ! 🩵 Tant que l'envoi automatique n'est pas encore configuré :`,
|
||||||
|
pt: `Obrigado, ficou ótimo! 🩵 Enquanto o envio automático ainda não está configurado:`,
|
||||||
|
},
|
||||||
|
form_success_fallback_btn: {
|
||||||
|
de: "E-Mail jetzt senden", "de-CH": "E-Mail jetzt schicke",
|
||||||
|
en: "Send Email Now", fr: "Envoyer l'e-mail maintenant", pt: "Enviar e-mail agora",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -47,4 +47,27 @@ window.I18N_PAGE = {
|
|||||||
de: "Andere Bewerbung suchen", "de-CH": "Anderi Bewärbig sueche",
|
de: "Andere Bewerbung suchen", "de-CH": "Anderi Bewärbig sueche",
|
||||||
en: "Look for a Different Application", fr: "Chercher une autre candidature", pt: "Procurar outra candidatura",
|
en: "Look for a Different Application", fr: "Chercher une autre candidature", pt: "Procurar outra candidatura",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
form_error_validation: {
|
||||||
|
de: "Bitte prüfe die markierten Felder — es fehlt noch etwas.", "de-CH": "Bitte prüef die markierte Felder — es fehlt no öppis.",
|
||||||
|
en: "Please check the highlighted fields — something's still missing.", fr: "Merci de vérifier les champs signalés — il manque encore quelque chose.", pt: "Verifique os campos destacados — ainda falta algo.",
|
||||||
|
},
|
||||||
|
form_success_delivered: {
|
||||||
|
de: `Danke, das sieht super aus! 🩵 Deine Bewerbung ist sicher im Postfach von Team Dogi angekommen.`,
|
||||||
|
"de-CH": `Danke, das gseht super us! 🩵 Dini Bewerbig isch sicher im Postfach vo Team Dogi acho.`,
|
||||||
|
en: `Thanks, that looks great! 🩵 Your application has safely arrived in Team Dogi's inbox.`,
|
||||||
|
fr: `Merci, ça a l'air génial ! 🩵 Ta candidature est bien arrivée dans la boîte de réception de la Team Dogi.`,
|
||||||
|
pt: `Obrigado, ficou ótimo! 🩵 Sua candidatura chegou com segurança na caixa de entrada da Team Dogi.`,
|
||||||
|
},
|
||||||
|
form_success_fallback: {
|
||||||
|
de: `Danke, das sieht super aus! 🩵 Solange noch kein automatischer Versand eingerichtet ist:`,
|
||||||
|
"de-CH": `Danke, das gseht super us! 🩵 Solang no kei automatischer Versand yrichtet isch:`,
|
||||||
|
en: `Thanks, that looks great! 🩵 As long as automatic delivery isn't set up yet:`,
|
||||||
|
fr: `Merci, ça a l'air génial ! 🩵 Tant que l'envoi automatique n'est pas encore configuré :`,
|
||||||
|
pt: `Obrigado, ficou ótimo! 🩵 Enquanto o envio automático ainda não está configurado:`,
|
||||||
|
},
|
||||||
|
form_success_fallback_btn: {
|
||||||
|
de: "E-Mail jetzt senden", "de-CH": "E-Mail jetzt schicke",
|
||||||
|
en: "Send Email Now", fr: "Envoyer l'e-mail maintenant", pt: "Enviar e-mail agora",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -79,4 +79,27 @@ window.I18N_PAGE = {
|
|||||||
de: "Andere Bewerbung suchen", "de-CH": "Anderi Bewärbig sueche",
|
de: "Andere Bewerbung suchen", "de-CH": "Anderi Bewärbig sueche",
|
||||||
en: "Looking for a different application", fr: "Chercher une autre candidature", pt: "Procurar outra candidatura",
|
en: "Looking for a different application", fr: "Chercher une autre candidature", pt: "Procurar outra candidatura",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
form_error_validation: {
|
||||||
|
de: "Bitte prüfe die markierten Felder — es fehlt noch etwas.", "de-CH": "Bitte prüef die markierte Felder — es fehlt no öppis.",
|
||||||
|
en: "Please check the highlighted fields — something's still missing.", fr: "Merci de vérifier les champs signalés — il manque encore quelque chose.", pt: "Verifique os campos destacados — ainda falta algo.",
|
||||||
|
},
|
||||||
|
form_success_delivered: {
|
||||||
|
de: `Danke, das sieht super aus! 🩵 Deine Bewerbung ist sicher im Postfach von Team Dogi angekommen.`,
|
||||||
|
"de-CH": `Danke, das gseht super us! 🩵 Dini Bewerbig isch sicher im Postfach vo Team Dogi acho.`,
|
||||||
|
en: `Thanks, that looks great! 🩵 Your application has safely arrived in Team Dogi's inbox.`,
|
||||||
|
fr: `Merci, ça a l'air génial ! 🩵 Ta candidature est bien arrivée dans la boîte de réception de la Team Dogi.`,
|
||||||
|
pt: `Obrigado, ficou ótimo! 🩵 Sua candidatura chegou com segurança na caixa de entrada da Team Dogi.`,
|
||||||
|
},
|
||||||
|
form_success_fallback: {
|
||||||
|
de: `Danke, das sieht super aus! 🩵 Solange noch kein automatischer Versand eingerichtet ist:`,
|
||||||
|
"de-CH": `Danke, das gseht super us! 🩵 Solang no kei automatischer Versand yrichtet isch:`,
|
||||||
|
en: `Thanks, that looks great! 🩵 As long as automatic delivery isn't set up yet:`,
|
||||||
|
fr: `Merci, ça a l'air génial ! 🩵 Tant que l'envoi automatique n'est pas encore configuré :`,
|
||||||
|
pt: `Obrigado, ficou ótimo! 🩵 Enquanto o envio automático ainda não está configurado:`,
|
||||||
|
},
|
||||||
|
form_success_fallback_btn: {
|
||||||
|
de: "E-Mail jetzt senden", "de-CH": "E-Mail jetzt schicke",
|
||||||
|
en: "Send Email Now", fr: "Envoyer l'e-mail maintenant", pt: "Enviar e-mail agora",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -68,4 +68,27 @@ window.I18N_PAGE = {
|
|||||||
de: "Andere Bewerbung suchen", "de-CH": "Anderi Bewärbig sueche",
|
de: "Andere Bewerbung suchen", "de-CH": "Anderi Bewärbig sueche",
|
||||||
en: "Look for a Different Application", fr: "Chercher une autre candidature", pt: "Procurar outra candidatura",
|
en: "Look for a Different Application", fr: "Chercher une autre candidature", pt: "Procurar outra candidatura",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
form_error_validation: {
|
||||||
|
de: "Bitte prüfe die markierten Felder — es fehlt noch etwas.", "de-CH": "Bitte prüef die markierte Felder — es fehlt no öppis.",
|
||||||
|
en: "Please check the highlighted fields — something's still missing.", fr: "Merci de vérifier les champs signalés — il manque encore quelque chose.", pt: "Verifique os campos destacados — ainda falta algo.",
|
||||||
|
},
|
||||||
|
form_success_delivered: {
|
||||||
|
de: `Danke, das sieht super aus! 🩵 Deine Bewerbung ist sicher im Postfach von Team Dogi angekommen.`,
|
||||||
|
"de-CH": `Danke, das gseht super us! 🩵 Dini Bewerbig isch sicher im Postfach vo Team Dogi acho.`,
|
||||||
|
en: `Thanks, that looks great! 🩵 Your application has safely arrived in Team Dogi's inbox.`,
|
||||||
|
fr: `Merci, ça a l'air génial ! 🩵 Ta candidature est bien arrivée dans la boîte de réception de la Team Dogi.`,
|
||||||
|
pt: `Obrigado, ficou ótimo! 🩵 Sua candidatura chegou com segurança na caixa de entrada da Team Dogi.`,
|
||||||
|
},
|
||||||
|
form_success_fallback: {
|
||||||
|
de: `Danke, das sieht super aus! 🩵 Solange noch kein automatischer Versand eingerichtet ist:`,
|
||||||
|
"de-CH": `Danke, das gseht super us! 🩵 Solang no kei automatischer Versand yrichtet isch:`,
|
||||||
|
en: `Thanks, that looks great! 🩵 As long as automatic delivery isn't set up yet:`,
|
||||||
|
fr: `Merci, ça a l'air génial ! 🩵 Tant que l'envoi automatique n'est pas encore configuré :`,
|
||||||
|
pt: `Obrigado, ficou ótimo! 🩵 Enquanto o envio automático ainda não está configurado:`,
|
||||||
|
},
|
||||||
|
form_success_fallback_btn: {
|
||||||
|
de: "E-Mail jetzt senden", "de-CH": "E-Mail jetzt schicke",
|
||||||
|
en: "Send Email Now", fr: "Envoyer l'e-mail maintenant", pt: "Enviar e-mail agora",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user