var nbgroepaantal = 1; function nbcheckformat(formel,formformat) { switch(formformat) { case 'currency': if(isNaN(formel.value)) { formel.value = ''; return false; } else { var nbtostring = formel.value.toString(); var nbcurrency = ''; for(i=1;i<(Math.floor(nbtostring.length/3)+1);i++) { j=i*3; nbcurrency += '.'+nbtostring.substring(nbtostring.length-j,nbtostring.length-j+3); } formel.value = nbtostring.substring(0,nbtostring.length-(Math.floor(nbtostring.length/3)*3) ) +''+ nbcurrency; return true; } break; case 'e-mail': if(formel.value.length < 6 || formel.value.indexOf("@",0) == - 1 || formel.value.indexOf(".",0) == - 1) { return false; } else { return true; } break; case 'akkoord': if(formel.value!='akkoord') { return false; } else { return true; } break; case 'nummer': if(isNaN(formel.value)) { return false; } else { return true; } break; case 'postcode': var cijfers = new Number(formel.value.substr(0,4)); if(isNaN(cijfers) || formel.value.length != 6 || !isNaN(formel.value.substr(3,2))) { return false; } else { return true; } break; case 'datum': var cijfers1 = new Number(formel.value.substr(0,2)); var cijfers2 = new Number(formel.value.substr(3,2)); var cijfers3 = new Number(formel.value.substr(6,4)); if(isNaN(cijfers1) || formel.value.length != 10 || isNaN(cijfers2) || isNaN(cijfers3)) { return false; } else { return true; } break; case 'datum-vandaag': var datumobj = new Date(); var vandaagdag = datumobj.getDate(); if(datumobj.getDate() < 10) vandaagdag = '0' + datumobj.getDate(); var vandaagmaand = datumobj.getMonth() + 1; if(vandaagmaand < 10) vandaagmaand = '0' + vandaagmaand; var datumcomp = vandaagdag + '-' + vandaagmaand + '-' + datumobj.getFullYear(); if(datumcomp != formel.value) { //alert(datumcomp); return false; } else { return true; } break; case 'telefoon': var telefoonreeks = formel.value.split('-'); var lengtereeks = telefoonreeks[0] + telefoonreeks[1]; var cijfers1 = new Number(telefoonreeks[0]); var cijfers2 = new Number(telefoonreeks[1]); if(isNaN(cijfers1) || isNaN(cijfers2) || lengtereeks.length != 10) { return false; } else { return true; } break; case 'uppercase': formel.value = formel.value.toUpperCase(); return true; break; case 'lowercase': formel.value = formel.value.toLowerCase(); return true; break; case 'no-spaces': formel.value = formel.value.replace(/[ ]+/gi,''); return true; } return false; } function nbcheckform(formid) { if(document.getElementById(formid)) { var nbformid=document.getElementById(formid).elements; } else { alert('Het formulier heeft geen id'); return false; } var nbfoutmelding=''; var nbradioapp=1; var nbcheckboxapp=1; for(i=0;i< nbformid.length;i++) // alle elementen aflopen { var nbchecknietalleenspaties = nbformid[i].value.replace(/ /g,''); if(nbformid[i].title.indexOf('[') > 0) { var nbverplichtreeks = nbformid[i].title.split('['); var nbverplichtveld = nbverplichtreeks[1]; nbverplichtveld = nbverplichtveld.replace(/[ ]+/gi,''); nbverplichtveld = nbverplichtveld.replace(/]/g,''); if(nbverplichtveld != '') { var nbverplichtformat = nbverplichtveld.split(','); } else { var nbverplichtformat = new Array('',''); } if(nbverplichtformat[0]=='required') { var nbverplichtmarkering=1; // verplicht if(nbverplichtformat[1]) { nbverplichtmarkering=2; // verplicht en format } } } else { var nbverplichtmarkering=0; // niet verplicht } if(nbverplichtmarkering>0) // als het verplicht is dan controleren { switch(nbformid[i].type) // het type veld bepalen en de juiste verwerking { case 'radio': if(eval(nbradioapp)) { var nbgroepnaam = nbformid[i].name; var nbradiogroep = nbformid[nbgroepnaam]; var nbgroepcheck = false; for(j=0;j< nbradiogroep.length;j++) { if(nbradiogroep[j].checked) { nbgroepcheck = true; } } if(!nbgroepcheck) { nbfoutmelding += '\t- '+ nbverplichtreeks[0] +'\n'; } nbradioapp = 'nbformid[i].name!=\''+nbgroepnaam+'\''; } break; case 'checkbox': if(nbverplichtformat[1].indexOf('groep') == -1) { if(!nbformid[i].checked) { nbfoutmelding += '\t- '+ nbverplichtreeks[0] +'\n'; } } else { var checkboxreeks = nbverplichtformat[1].split(':'); if(eval(nbcheckboxapp)) { var objidreeks = checkboxreeks[2].split('-'); var checkedgroep = 0; for(ci=0;ci < objidreeks.length;ci++) { var objid = checkboxreeks[1] + '' + objidreeks[ci]; if(document.getElementById(objid).checked == true) { checkedgroep++; } } //alert('Groep aantal: ' + nbgroepaantal + ' Gekozen aantal: ' + checkedgroep); if(checkedgroep < (0 + nbgroepaantal)) { nbfoutmelding += '\t- '+ nbverplichtreeks[0] +'\n'; } nbcheckboxapp = ' nbverplichtreeks[0] !=\''+ nbverplichtreeks[0] +'\''; } } break; case 'text': var nbchecked = true; if(nbverplichtmarkering==2) nbchecked = nbcheckformat(nbformid[i],nbverplichtformat[1]); if(nbformid[i].value=='' || (!nbchecked && nbformid[i].value!='') || nbchecknietalleenspaties == '') nbfoutmelding += '\t- '+ nbverplichtreeks[0] +'\n'; break; case 'textarea': if(nbformid[i].value=='' || nbchecknietalleenspaties == '') nbfoutmelding += '\t- '+ nbverplichtreeks[0] +'\n'; break; case 'password': if(nbformid[i].value=='' || nbchecknietalleenspaties == '' || nbformid[i].value.length < 6) nbfoutmelding += '\t- '+ nbverplichtreeks[0] +'\n'; break; case 'select-one': if(nbformid[i].value=='') nbfoutmelding += '\t- '+ nbverplichtreeks[0] +'\n'; break; case 'select-multiple': if(nbformid[i].value=='') nbfoutmelding += '\t- '+ nbverplichtreeks[0] +'\n'; } } } if(nbfoutmelding!=''){ nbfoutmelding = 'Warning: the following fields aren\'t (correctly) submitted.\n\n\n'+ nbfoutmelding; alert(''+ nbfoutmelding +''); return false; } else{ return true; } } function nbverplichtmaken(id,modus,format){ var obj = document.getElementById(id); if(modus == 'verplicht'){ obj.title += ' [verplicht'; if(format!='') obj.title += ', ' + format; obj.title += ']'; } else{ var nieuwetitelreeks = obj.title.split('['); obj.title = nieuwetitelreeks[0]; } } function nbactiveerformulier(){ for(var i=0;i< document.forms.length;i++){ if(document.forms[i].title){ if(document.forms[i].title == 'Required'){ for(var j=0;j< document.forms[i].elements.length;j++){ if(document.forms[i].elements[j]){ if(document.forms[i].elements[j].type.toLowerCase() == 'submit'){ document.forms[i].elements[j].style.display = 'none'; } } } } document.forms[i].innerHTML += '
      <\/div>'; } } }