	// JavaScript Document
	function CheckInput() {
		// Elementen zoeken in de pagina 
		var voorletters    = document.getElementById("val_voorletters"); 
		var achternaam     = document.getElementById("val_achternaam");
		var telefoonnummer = document.getElementById("val_telefoonnummer");
		var emailadres     = document.getElementById("val_email");
		var aanleiding     = document.getElementById("val_aanleiding");
	
		var straat         = document.getElementById("val_straat");
		var huisnummer     = document.getElementById("val_huisnummer");
		var postcode_num   = document.getElementById("val_postcode_nr");
		var postcode_let   = document.getElementById("val_postcode_lt");
		var woonplaats     = document.getElementById("val_woonplaats");
	
//		var interesse_keukens 	= document.getElementById("val_interesse_keukens");
//		var interesse_sanitair 	= document.getElementById("val_interesse_sanitair");
//		var interesse_tegels 	= document.getElementById("val_interesse_tegels");
		
		var rijbewijs      = document.getElementById("val_rijbewijs");
		var eigen_auto     = document.getElementById("val_eigen_auto");
		var ordernummer    = document.getElementById("val_ordernummer");
		var postcode_cijfers = document.getElementById("val_postcode_cijfers");
		var postcode_letters = document.getElementById("val_postcode_letters");

		var vraag  	  	   = document.getElementById("val_vraag");
	   
		if( voorletters ){
			if( voorletters.value == "") {
				showMessage( voorletters );
				voorletters.style.background='yellow';
				return false;
			} else { 
				// Voorletters in Format zetten : abc > A.B.C. // ABC > A.B.C.
				var letters = new Array();
				var i = 0;
				var j = 0;
				var voorlettersAangepast = "";
				var voorletter = voorletters.value;
				voorletter = voorletter.toUpperCase();
				while ( i <= voorletter.length)	{
					voorletter = voorletter.replace( ".", "");
					voorletter = voorletter.replace( " ", "");
					i++;
				}
				letters = voorletter.split("");
				while ( j < letters.length)	{
					voorlettersAangepast += letters[j] + ".";
					j ++;
				}
				voorletters.style.background='white';
				voorletters.value = voorlettersAangepast;
			}
		}
		// ACHTERNAAM
		if(achternaam){
			if ( achternaam && achternaam.value == "") {
				showMessage( achternaam );
				achternaam.style.background = 'yellow';
				return false;
			} else { 
				achternaam.style.background = '#FFF';
				// Eerste letter van de achternaam in Format zetten : abc def > Abc Def
				var i = 0;
				var j = 0;
				var k = 0;
				var m = 0;
				var achtern = achternaam.value;
				var srcIndex;
				var achternaamPart = new Array();
				var achternaamPartLos = new Array();
				var achternaamPartAangepast = new Array();
				var achternaamLastLos = new Array();
				var achternaamAangepast = "";
				var achternaamLast = "";
				achtern = achtern.toLowerCase();
				while ( srcIndex != -1) {
					srcIndex = achtern.search(" ")
					if ( srcIndex != -1) {
						achternaamPart[i] = achtern.substr(0 , srcIndex);
						achternaamPartLos = achternaamPart[i].split("");
						achternaamPartLos[0] = achternaamPartLos[0].toUpperCase();
						achternaamPartAangepast[i] = "";
						j = 0;
						while ( j < achternaamPartLos.length ) {
							achternaamPartAangepast[i] = achternaamPartAangepast[i] + achternaamPartLos[j];
							j ++;
						}
						srcIndex++;
						achtern = achtern.slice(srcIndex , achtern.length);
						i++;
					}
				}
				while ( k < achternaamPartAangepast.length)	{
					achternaamAangepast += achternaamPartAangepast[k];
					achternaamAangepast += " ";
					k++;
				}
				achternaamLastLos = achtern.split("");
				achternaamLastLos[0] = achternaamLastLos[0].toUpperCase();
				while ( m < achternaamLastLos.length ) {
					achternaamLast += achternaamLastLos[m];
					m++;
				}
				achternaamAangepast = achternaamAangepast + achternaamLast;
				achternaam.style.background='white';
				achternaam.value = achternaamAangepast;
			}
		}
		// TELEFOON
		if( telefoonnummer ){
			var re4 = /^0([0-9]{9})/;
			var replace_re = /[^0-9]/;
			// telefoonnummers in de Format zetten : 012-3456789 > 0123456789
			var tel = telefoonnummer.value;
			tel = tel.replace( replace_re , "");		
			if( !re4.test( tel ) ){
				telefoonnummer.style.background = 'yellow';
				showMessage( telefoonnummer );
				return false;
			}
			telefoonnummer.style.background = '#FFF';
		}
		// EMAILADRES
		if( emailadres ){
			if (! ( /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,10})+$/.test( emailadres.value ) ) ){
				emailadres.style.background = 'yellow';
				showMessage( emailadres );
				return false;
			}
			emailadres.style.background = '#FFF';
		}
		
		//FORM VERDER AFHANDELEN NAAR KEUZE VAN Waarom wilt u contact opnemen 
		if (aanleiding) {
			if (aanleiding.value == "--" || aanleiding.value == "") {
				aanleiding.style.background = 'yellow';
				showMessage( aanleiding );
				return false;
			} else
				aanleiding.style.background = '#fff';
				if (aanleiding.value == "informatie") {
				// Informatie aanvragen. De velden straat, huisnr, postcode (2x), woonplaats en interesse(3x) checken
				// STRAAT
				if( straat ){
					if ( straat.value == "" ) {
						showMessage( straat );
						straat.style.background = 'yellow';
						return false;
					} else {
						if (straat.value.match(/[0-9]+[a-zA-Z]?$/)) {
							showExtStreetMessage( straat );
							straat.style.background = 'yellow';
							return false;
						} else {			
							straat.style.background = '#FFF'; 
							// Eerste letters van het Adres in Format zetten : abc def > Abc Def
							var straat_parts = straat.value.split( " " );
							var straat_partsLos;
							var straat_partsTmp = "";
							var straat_new = "";

							for( var i = 0; i < straat_parts.length; i++ ){
								straat_partsLos = straat_parts[i].split("");
								if( straat_partsLos.length > 0 ){
									straat_partsLos[0] = straat_partsLos[0].toUpperCase();
									straat_partsTmp = "";
									for( var j = 0; j < straat_partsLos.length; j++ ){
										straat_partsTmp += straat_partsLos[j];
									}
									straat_parts[i] = straat_partsTmp;
									if( i < ( straat_parts.length - 1 ) )
										straat_new += straat_parts[i] + " ";
									else
										straat_new += straat_parts[i];
								}
							}
							straat.style.background='white';
							straat.value = straat_new;
						}
					}
				}
				// HUISNUMMER
				if( huisnummer ){
					if( huisnummer.value == "" ){
						showMessage( huisnummer );
						huisnummer.style.background = 'yellow';
						return false;
					}
					huisnummer.style.background = '#FFF';
				}
				// POSTCODE_NUMMERS
				if( postcode_num  ){
					var re2 = /[0-9]{4}/;
					if( !re2.test( postcode_num.value ) ){
						showMessage( postcode_num  );
						postcode_num.style.background = 'yellow';
						return false;
					}
					postcode_num.style.background = '#FFF';
				}
				//POSTCODE LETTERS
				if( postcode_let ){
					var re3 = /[A-Z]{2}/;
					var p = postcode_let.value.toUpperCase();
					if( !re3.test( p ) ){
						postcode_let.style.background = 'yellow';
						showMessage( postcode_let );
						return false;
					} else {
						postcode_let.style.background = '#FFF';
						postcode_let.value = p;
					}
				}
				// WOONPLAATS
				if( woonplaats ){
					if ( woonplaats.value == "" ) {
						showMessage( woonplaats );
						woonplaats.style.background = 'yellow';
						return false;
					} else { 
						woonplaats.style.background = '#FFF';
						// Woonplaats in Format zetten : AbCdeF > ABCDEF
						woonplaats.value = woonplaats.value.toUpperCase();
					}
				}
				// INTERESSE VELDEN
/*				if(interesse_keukens && interesse_sanitair && interesse_tegels){
					if(
					   interesse_keukens.checked == false &&
					   interesse_sanitair.checked == false &&
					   interesse_tegels.checked == false
					){
						showMessage( interesse_keukens );
						document.getElementById('interesse_detail').style.background = "yellow";
						return false;
					} else {
						document.getElementById('interesse_detail').style.background = "#FFF";
					}
				}*/
		  } else if ((aanleiding.value == "servicemelding") || (aanleiding.value == "klacht")) {
				// Informatie aanvragen. De velden ordernummer en vraag / opmerking
				if( ordernummer ){
					if (ordernummer.value == "") {
						showMessage( ordernummer );
						ordernummer.style.background = 'yellow';
						return false;
					} else { 
					   ordernummer.style.background = '#FFF';
					}
				}
				// POSTCODE_NUMMERS
				if( postcode_cijfers ){
					var re2 = /[0-9]{4}/;
					if( !re2.test( postcode_cijfers.value ) ){
						showMessage( postcode_cijfers  );
						postcode_cijfers.style.background = 'yellow';
						return false;
					}
					postcode_cijfers.style.background = '#FFF';
				}
				//POSTCODE LETTERS
				if( postcode_letters ){
					var re3 = /[A-Z]{2}/;
					var p = postcode_letters.value.toUpperCase();
					if( !re3.test( p ) ){
						postcode_letters.style.background = 'yellow';
						showMessage( postcode_letters );
						return false;
					} else {
						postcode_letters.style.background = '#FFF';
						postcode_letters.value = p;
					}
				}

//				if(!checkVraag ()) return false;
		  } else if (aanleiding.value == "opmerking"){
		     aanleiding.style.background = '#FFF';
			  // opmerking doorgeven. Het veld vraag / opmerking checken
//			  if(!checkVraag ()) return false;
		  } else if (aanleiding.value == "klacht"){
		     aanleiding.style.background = '#FFF';
			  // Algemene klacht. Het veld vraag / opmerking checken
//			  if(!checkVraag ()) return false;
		  }
	   }
	   return true;
	} 
	// check vraag function, because this field is displayed more than once.
	function checkVraag () {
		var vraag = document.getElementById("val_vraag");
		if( vraag ){
			if ( vraag.value == "" ) {
				showMessage( vraag );
				vraag.style.background = 'yellow';
				return false;
			} else { 
			   vraag.style.background = '#FFF';
			   return true;
			}
		}
	}

	function showMessage( dom_id ){
		alert( "U heeft een invoerveld niet of niet correct ingevuld." );
		dom_id.focus();   
   	}
	function showExtStreetMessage( dom_id ){
		alert( "Controleer of u een huisnummer bij \"straat\" heeft ingevuld" );
		dom_id.focus();
	}

   	function goForm(){
		if (oForm = document.getElementById( "contact" )) {
			if(CheckInput() ){
				oForm.method = 'post';
				oForm.action = "/service/contact";
				oForm.submit();
			}
		} else if (oForm = document.getElementById( "afspraak" )) {
			if(CheckInput() ){
				oForm.method = 'post';
				oForm.action = "/service/afspraak";
				oForm.submit();
			}
		}
   }
