(* Champs obligatoires)
(() => {
const FIELD_ID = 'form-field-field_requestedEntryDate';
function toYMD(d){
const yyyy = d.getFullYear();
const mm = String(d.getMonth() + 1).padStart(2,'0');
const dd = String(d.getDate()).padStart(2,'0');
return `${yyyy}-${mm}-${dd}`;
}
// +6 Monate lt. OR, Monatsende wird ermittelt
function addMonthsClamped(date, months){
const d = new Date(date.getTime());
d.setHours(0,0,0,0);
const day = d.getDate();
d.setDate(1);
d.setMonth(d.getMonth() + months);
const lastDay = new Date(d.getFullYear(), d.getMonth() + 1, 0).getDate();
d.setDate(Math.min(day, lastDay));
return d;
}
function applyMinMax(){
const el = document.getElementById(FIELD_ID);
if (!el) return false;
const today = new Date();
today.setHours(0,0,0,0);
const minDate = today;
const maxDate = addMonthsClamped(today, 6);
el.min = toYMD(minDate);
el.max = toYMD(maxDate);
if (el._flatpickr) {
el._flatpickr.set('minDate', el.min);
el._flatpickr.set('maxDate', el.max);
}
return true;
}
function init(){
if (applyMinMax()) return;
let tries = 0;
const timer = setInterval(() => {
tries++;
if (applyMinMax() || tries >= 40) clearInterval(timer);
}, 250);
document.addEventListener('focusin', (e) => {
if (e.target && e.target.id === FIELD_ID) applyMinMax();
});
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', init);
} else {
init();
}
})();
document.getElementById('form-field-field_sozversnr').maxLength = "16";
document.getElementById('form-field-field_titel').maxLength = "20";
document.getElementById('form-field-field_vorname').maxLength = "24";
document.getElementById('form-field-field_name').maxLength = "24";
document.getElementById('form-field-field_geburtsdatum').maxlength = "10";
document.getElementById('form-field-field_heimatort').maxLength = "50";
document.getElementById('form-field-field_strasse').maxLength = "40";
document.getElementById('form-field-field_strassennr').maxLength = "9";
document.getElementById('form-field-field_adresszusatz').maxLength = "40";
document.getElementById('form-field-field_plz').maxLength = "20";
document.getElementById('form-field-field_ort').maxLength = "30";
document.getElementById('form-field-field_kanton').maxLength = "30";
document.getElementById('form-field-field_land').maxLength = "10";
document.getElementById('form-field-field_email').maxLength = "80";
document.getElementById('form-field-field_telefon').maxLength = "30";
document.getElementById('form-field-field_mobile').maxLength = "30";
document.getElementById('form-field-field_ag').maxLength = "250";
document.getElementById('form-field-field_agstrasse').maxLength = "40";
document.getElementById('form-field-field_agnr').maxLength = "9";
document.getElementById('form-field-field_agplz').maxLength = "20";
document.getElementById('form-field-field_agort').maxLength = "30";
document.getElementById('form-field-field_agkanton').maxLength = "30";
document.getElementById('form-field-field_agland').maxLength = "50";
document.getElementById('form-field-field_bank').maxLength = "80";
document.getElementById('form-field-field_clearingnr').maxLength = "30";
document.getElementById('form-field-field_iban').maxLength = "80";
document.getElementById('form-field-field_mitglwerbung').maxLength = "130";