function check(which, verplicht, errorOld, emailerrorOld){
	var empty 	   		   	  = false;
	var veld  	   		   	  = "";
	var error 	   		   	  = false;
	var errorClass 		   	  = "error";
	var email	   		   	  = /^[_\.0-9a-z-]+\@([0-9a-z][0-9a-z-]*\.)+([a-z]{2,4})+$/i; //e-mail check
	var postcode  		   	  = /^[1-9]{1}[0-9]{3}[A-Z]{2}$/; // van 1000AA tot 8999ZZ - Let op, geen spatie!
	var oneSelected		   	  = false;
	
	var errorTekst 		   	  = Array();
	errorTekst['tekst']    	  = "         - U heeft een of meerdere velden leeg gelaten\n";
	errorTekst['email']    	  = "         - Het door u ingevoerde e-mailadres is niet geldig\n";
	errorTekst['postcode'] 	  = "         - De door u ingevoerde postcode is niet geldig. Vul de postcode in met notatie 1234AB\n";
	errorTekst['checkbox'] 	  = "         - U heeft bij één of meerdere checkboxen, geen checkbox aangevinkt.";
	errorTekst['radio'] 	  = "         - U heeft bij één of meerdere radiobuttons, geen radiobutton aangevinkt.";
	
	var soortErrors 	   	  = Array();
	
	for (j=0;j<verplicht.length;j++){
		if(which[verplicht[j][0]]){
			veld  = which[verplicht[j][0]];
			error = false;
			
		    if(verplicht[j][1]=="string" || verplicht[j][1]=="textarea"){
				if(veld.className){
					className 	   = veld.className;
					
					//remove error class if exists
					veld.className = veld.className.replace(" "+errorClass,"");
				}else{
					veld.className = "";
				}
				
				if(veld.value=='' || veld.value==' '){
					error = true;
					empty = true;
					
					if(!soortErrors['tekst']){
						soortErrors['tekst'] = 'tekst';
					}
				}
				if((verplicht[j][0]=='email' || verplicht[j][0]=='e-mail' || verplicht[j][0]=='e-mailadres' || verplicht[j][0]=='emailadres') && !(email.test(veld.value))){
					error = true;
					empty = true;
					
					if(!soortErrors['email']){
						soortErrors['email'] = ['email'];
					}
				}
				if(verplicht[j][0]=='postcode' && !(email.test(veld.value))){
					veld.value = veld.value.toUpperCase();
											
					if (!postcode.exec(postcode)) {
						error = true;
						empty = true;
						
						if(!soortErrors['postcode']){
							soortErrors['postcode'] = 'postcode';
						}
					}
				}
				
				if(error){
					veld.className = veld.className+' '+errorClass;
					error = false;
				}
			}
			else if(verplicht[j][1]=="checkbox" || verplicht[j][1]=="checkboxset"){
				oneSelected = false;
				
				if(veld.length>1){	
					for(i=0; i<veld.length;i++){
						if(veld[i].checked){
							oneSelected = true;
						}
					}
				}
				else{
					if(veld.checked==true){
						oneSelected = true;	
					}
				}	
					
				if(!oneSelected){
					empty = true;		
					if(!soortErrors['checkbox']){
						soortErrors['checkbox'] = 'checkbox';
					}
				}					
			}
			else if(verplicht[j][1]=="radio"){
				oneSelected = false;	
				
				for(i=0; i<veld.length;i++){
					if(veld[i].checked){
						oneSelected = true;
					}
				}	
					
				if(!oneSelected){
					empty = true;		
					if(!soortErrors['radio']){
						soortErrors['radio'] = 'radio';
					}
				}
			}					
		}
	}
	
	if(empty){
		var message = "U heeft de volgende onderdelen van het formulier niet correct ingevoerd:\n\n";		
		for(i in soortErrors){
			if(errorTekst[soortErrors[i]]){
				message += errorTekst[soortErrors[i]];
			}
		}
		alert(message);
		return false;
	} else {
		which.spamchecker.value = "GEEN_SPAM";
		return true;
	}
}

function goToCat(id){
	var value = document.getElementById(id).value;
	if(value){
		window.location = value;
		return false;
	}
	return false;
}

$(document).ready(function(){
	$('.blur').focus(function (event) {
		if (event.currentTarget.defaultValue == $(this).val())
			$(this).val('');
	}).blur(function (event) {
		if ($(this).val() == '')
			$(this).val(event.currentTarget.defaultValue);
	});
	
	$('#totop').click(function (event) {
		$('html, body').animate({scrollTop: 0}, 'slow');
		return false;
	});
	$('#tocomments').click(function (event) {
		$('html, body').animate({scrollTop: $("#comments").offset().top}, 'slow');
		return false;
	});	
});
