// ja ja, een popup
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);}

// voor bevestiging, bij bijvoorbeeld een formulier
function jn(message, mijnurl) 
	{if (confirm(message)==true)
	{document.location.href = mijnurl;}}

/* target is deprecated, gebruik onderstaande voor nieuw venster
bijv: <a href="document.html" rel="external">external link</a>
zie voor meer info http://www.sitepoint.com/article/1041*/
function externalLinks() {
 if (!document.getElementsByTagName) return;
 var anchors = document.getElementsByTagName("a");
 for (var i=0; i<anchors.length; i++) {
   var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
	anchor.getAttribute("rel") == "external")
	anchor.target = "_blank";
	// anchor.title = "Link opent in nieuw venster";
 }
}
window.onload = externalLinks;	

// weergeven of verbergen van divs voor helpfunctie
function toggleLayer(whichLayer)
{
	if (document.getElementById)
	{
		// this is the way the standards work
		var style2 = document.getElementById(whichLayer).style;
		style2.display = style2.display? "":"block";
	}
	else if (document.all)
	{
		// this is the way old msie versions work
		var style2 = document.all[whichLayer].style;
		style2.display = style2.display? "":"block";
	}
	else if (document.layers)
	{
		// this is the way nn4 works
		var style2 = document.layers[whichLayer].style;
		style2.display = style2.display? "":"block";
	}
}

/* Auteur: Martijn van Leeuwen
Datum: 16-2-2004
Doel:  Universeel formcheck script. */
function CheckFormFields(inp,form){
	
	var msg = false;
	
	// set filters
	var _email  = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,})+$/;
	var _number = /[\D]/i;	
	var _zip 	= /^[1-9]{1}[0-9]{3} ?[a-zA-Z]{2}$/;	
	var _spaces = /\s/;
	var _files = /^[0-9a-zA-Z|+|-|_]([\.-]?[0-9a-zA-Z|+|-|_]+)+$/;
	
	var addMsg = function(){
		if(!msg)
			msg="";
		msg = msg + "\n - " + in_msg + " ";	
	}
	
	var check_element = function(name){
		if(!in_obj){
			alert('Dev Error :: formulier element "' + in_name + '" bestaat niet.');
			return false;
		}	
		return true;
	}
		
	for (var i = 0; i < inp.length; i++){
		
		var in_name  = inp[i][0];
		var in_obj 	 = form.elements[in_name];
		
		// check of element bestaat in formulier
		if(!check_element(in_obj))
			return false;
					
		if(in_obj.value)
			var in_value = in_obj.value.replace(_spaces,"");						
		else 
			var in_value = false;
			
		var in_type  = inp[i][1];
		var in_msg   = inp[i][2];
		
		switch(in_type){
			case 'email':
				//alert(_email.test(in_value));			
				if (!_email.test(in_value))
					addMsg();
				break;
			case 'number':
				if (_number.test(in_value))
					addMsg();
				break;
			case 'multicheckbox':	
			case 'radio':				
				checked = false;                                        
				for (y = 0; y < in_obj.length; y++){
					checked = in_obj[y].checked;
					if (checked) break;                                                
				}
				if (!checked) 
					addMsg();
				break;
			case 'select':
				if (in_obj[0].selected && !in_obj[0].value) 
					addMsg();
				break;
			case 'checkbox':
				if (!in_obj.checked) 
					addMsg();
				break;
			case 'zip':
				if (!_zip.test(in_value))
					addMsg();
				break;
			case 'http':
				// nog niet geset.
				if (in_value=="")
					addMsg();
				break;
			case 'file':
				if (in_value) {
					var filename = in_value.split('\\');
					filename = filename[filename.length-1];
					if (!_files.test(filename) || in_value.search(_extRe) == -1) addMsg();
				} else if (in_required==1) addMsg();
				break;
			case 'anderscontrole':				
				var in_freetext = "";
				if(inp[i].length>3){
					in_freetext = inp[i][3];
				}
				checked = false;
				var check_item = document.getElementById(in_name);
				var text_item = form.elements[in_freetext];
				if(!check_item){
					in_msg = "Het radio of checkbox element met id=" + in_name + " kan niet worden gevonden!";
					addMsg();
					break;
				}
				if(!text_item){
					in_msg = "Het verplichte tekstveld behorende bij het radio of checkbox element kan niet worden gevonden!";
					addMsg();
					break;
				}                                       
				if(check_item.checked && text_item.value.replace(_spaces,"")=='')
					addMsg();
				break;
			case 'checkboxminchecked':
				var minimum_aantal = 0;
				var numchecked = 0;
				if(inp[i].length>3){
					minimum_aantal = parseInt(inp[i][3]);
				}
				for (y = 0; y < in_obj.length; y++){
					checked = in_obj[y].checked;
                     if(checked) numchecked++;                          
				}
				if(numchecked<minimum_aantal)
					addMsg();
				break;
				
			case '':
			case 'text':
			default:				
				if (!in_value || in_value == "")
					addMsg();
				break;			
		}                                                  
	}
    
	if (msg){
		alert("De volgende fouten hebben zich voorgedaan:" + msg);
		return false;
	}
	else return true;
}

function resetSelect(elmid) {
	var elm=document.getElementById(elmid);
	for (var i=0;i<elm.options.length;i++) {
		elm.options[i].selected=false;
	}
}
