function postcodeCheck(invoer) {
  re = /^[1-9][0-9]{3} ?[a-zA-Z]{2}$/
  OK = re.exec(invoer.value);
  if (OK) 
     invoer.value = invoer.value.substr(0,4) + " " + invoer.value.substr(invoer.value.length - 2,2).toUpperCase();
  else
     alert (invoer.value + " is geen geldige Nederlandse postcode!");
}

function emailCheck(invoer,melding) { 
   if (invoer.value == '') return true;
	re = /^[A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)*[@][A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)+$/
   OK = re.exec(invoer.value);
   if (OK) 
    	return true;
   else {
	   alert(melding);
	   return false;
	}
} 

function testverplicht(invoer,velden,melding) {
   var mnd = new Array (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
   fout = -1;
	datum = 0;
   for (var i=0; i < invoer.elements.length; i++){
	  if (invoer.elements(i).name.substr(0,5) == 'field') {
	     j = parseInt(invoer.elements(i).name.slice(5),10);
		  if (invoer.elements(i).name.lastIndexOf('Day') > 0){
		     dag = parseInt(invoer.elements(i).value,10);
			  datum = 1
		  }
		  if (invoer.elements(i).name.lastIndexOf('Month') > 0){
		     maand = invoer.elements(i).selectedIndex;
			  datum = 2
		  }
		  if (invoer.elements(i).name.lastIndexOf('Year') > 0){
		     jaar = parseInt(invoer.elements(i).value,10);
			  datum = 3
		  }
 		  	  	
		  if (datum == 3 && (!isNaN(dag) || !isNaN(jaar))){
		     if (isNaN(dag) || isNaN(jaar) || dag < 1) datum = 4;
			  if (jaar < 1901) datum = 4;
			  if (maand != 1 && dag > mnd[maand]) datum = 4;

			  if (datum == 3 && maand == 1 && dag > 28){
   			  if ((jaar % 4) != 0) datum = 4;
			  }
		  }

		  if (datum == 4) {
    	  	  invoer.elements(i - 2).className = 'markeer';
    	  	  invoer.elements(i - 1).className = 'markeer';
    	  	  invoer.elements(i).className = 'markeer';
			  if (fout < 0) fout = i - 2;
		  }
		  else {
           if (velden.charAt(j-1) == 'J') {
	           if (invoer.elements(i).value == '') {
    	  	        invoer.elements(i).className = 'markeer';
		   	     if (fout < 0) fout = i;
				  }
		     }
		     else {
    	        invoer.elements(i).className = '';
			  }
   	  }
	  }
	}

	if (fout > -1){
   	alert (melding);
	   invoer.elements(fout).focus();
	   return false;
	}
	else return true;
}

function herstel(invoer){
   for (var i=0; i < invoer.elements.length; i++) invoer.elements(i).className = '';
}


