function addClass(obj, cName) { if (obj&&cName&&!hasClass(obj, cName)) { obj.className += " "+cName; } }
function removeClass(obj, cName) { if (obj&&cName) { if (obj.className==obj.className.replace(" ","-")) { obj.className=obj.className.replace(cName, ""); } else { obj.className=obj.className.replace(" "+cName, ""); } } }
function hasClass(obj, cName) { if (obj&&cName) { if (obj.className == obj.className.replace(cName,"")) { return false; } return true; } }
function addRemoveClass(obj, cName) { if (obj&&cName) { if (!hasClass(obj, cName)) { addClass(obj,cName); } else { removeClass(obj,cName); } } }
function CheckEmailAddress(x) { var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; if (!filter.test(x)) { return false; } return true; }

function HM_WarnVisual(args) {
  var i,warnThis=args.split(",");
  for (i=0; i<(warnThis.length); i++) { obj=MM_findObj(warnThis[i]);
    obj=MM_findObj(warnThis[i]); if (obj) { addClass(obj,WarnClass);
    obj.onchange=function() { removeClass(this,WarnClass); } } } }

function HM_validateFormNL() {
  var i,nm,check,p,errors='',visual='',args=HM_validateFormNL.arguments;
  for (i=0; i<(args.length); i++) { obj=MM_findObj(args[i]); check=args[++i]; if (obj) { nm=obj.name; 
// Controle verplicht veld
    if (check=='R') { if (!obj.value) {
  errors += ' - '+nm+' is verplicht\n';
    if (visual) { visual += ","+nm; } else { visual = nm; } } }
// Controle isEmail
    else if (check=='isEmail'||check=='RisEmail') { if (!CheckEmailAddress(obj.value)) {
  errors+=' - '+nm+' moet een e-mail adres zijn.\n';
    if (visual) { visual += ","+nm; } else { visual = nm; } } }
// Controle isChecked
    else if (check.indexOf('isChecked')==0) { if (!obj.checked) {
  errors += ' - '+nm+' is verplicht\n';
    if (visual) { visual += ","+nm; } else { visual = nm; } } }
// Geef errors weer
  } } if (errors) { alert("De volgende fouten zijn opgetreden:\n"+errors); HM_WarnVisual(visual); }
  document.HM_returnValue = (errors == '');
}



/* Met een translate functie ingebouwd: */

/*
var translate = {};
  translate['form_aanhef']          = 'Aanhef';
  translate['form_voorletters']     = 'Voorletters';
  translate['form_email']           = 'E-mail';

function HM_validateFormNL() { //v4.0
  var i,nm,tr,check,p,errors='',visual='',args=HM_validateFormNL.arguments;
  for (i=0; i<(args.length); i++) { obj=MM_findObj(args[i]); check=args[++i]; if (obj) { nm=obj.name;
  if (window.translate&&translate[nm]) { tr=translate[nm]; } else { tr=nm; }
// Controle verplicht veld
    if (check=='R') { if (!obj.value) {
  errors += ' - '+tr+' is verplicht\n';
    if (visual) { visual += ","+nm; } else { visual = nm; } } }
// Controle isEmail
    else if (check=='isEmail'||check=='RisEmail') { if (!CheckEmailAddress(obj.value)) {
  errors+=' - '+tr+' moet een e-mail adres zijn.\n';
    if (visual) { visual += ","+nm; } else { visual = nm; } } }
// Controle isChecked
    else if (check.indexOf('isChecked')==0) { if (!obj.checked) {
  errors += ' - '+tr+' is verplicht\n';
    if (visual) { visual += ","+nm; } else { visual = nm; } } }
// Geef errors weer
  } } if (errors) { alert("De volgende fouten zijn opgetreden:\n"+errors); HM_WarnVisual(visual); }
  document.HM_returnValue = (errors == '');
}

*/

