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:
2026-08-02 10:12:16 +02:00
parent c1e83bfd5a
commit d5cd3f580d
5 changed files with 110 additions and 4 deletions
+18 -4
View File
@@ -75,9 +75,15 @@ function setupForm(formId, subjectLabel) {
const fields = [...form.querySelectorAll("input[required], select[required], textarea[required], input[type=email]")];
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 (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";
}
return;
@@ -91,12 +97,20 @@ function setupForm(formId, subjectLabel) {
if (status) {
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";
} else {
const mailto = buildMailto(subjectLabel, data);
status.innerHTML = `Danke, das sieht super aus! 🩵 Solange noch kein automatischer Versand eingerichtet ist:
<a href="${mailto}" class="btn btn-outline" style="margin-top:.6rem;">E-Mail jetzt senden</a>`;
const introText = window.dogiUebersetzen
? 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";
}
}