// load external link <a href="link" rel="external">link</a>
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";
    }
}
window.onload = externalLinks;

function checkformulier(field){
	var status = 'okee';
	// GA KIJKEN WELKE VELDEN VERPLICHT ZIJN.
	// DEZE BEGINNEN MET check_
	var frm = document.forms[0];
	for (var e = 0; e < frm.length; e++) {
		var name = frm.elements[e].name;
	    if(name.substr(0,6) == 'check_'){
			var naamzondercheck = name.substr(6,28)
			if(frm.elements[e].value==''){
			 	alert('U heeft geen '+ naamzondercheck + ' ingevoerd');
				status = 'niet okee';
			}
		}
    }
	if(status=='okee'){
		frm.submit();
	}
}

function bugreport(currentPage,referer,naam) {
	open("/content/reportbug.php?currentPage="+escape("http://"+currentPage)+"&referer="+escape(referer)+"&naam="+naam,"bugReport","width=500,height=380,scrollbars=no,resizable=no,toolbar=no,statusbar=yes");
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function switchDisplayVisibility(el,forced) {
	var element = document.getElementById(el);
	if (forced) {
		element.style.display=forced;
	} else {
		if (element.style.display=='display') {
			element.style.display='none';
		} else {
			element.style.display='block';
		}
	}
}

function is_IE() {
	return document.all;
}

function $(element) {
	return document.getElementById(element);
}


function switchVisibilityZoekbox(el, forced, breedte){
	// breedte = smal of breed
	var element = document.getElementById(el);
	var agt=navigator.userAgent.toLowerCase();
	this.ie     = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
	this.major = parseInt(navigator.appVersion);

	if(forced){
		if(forced=='block'){
			if(this.ie && (this.major == 4) && (agt.indexOf("msie 6.")!=-1) ) {
				document.getElementById('zoekbox_container2').style.bottom = ((breedte=='breed') ? '-140px' : '-132px')      // 140
			} else {
				document.getElementById('zoekbox_container2').style.bottom = '-132px';
			}
		}else{
			document.getElementById('zoekbox_container2').style.bottom = '0px';
		}
		element.style.display=forced;
	}else{
		if((element.style.display=='')||(element.style.display=='none')){
			element.style.display='block';
			document.getElementById('zoekbox_container2').style.bottom = '158px';
		}else{
			element.style.display='none';
			document.getElementById('zoekbox_container2').style.bottom = '28px';
		}
	}
}

function switchVisibility(el, forced){
	var element = document.getElementById(el);
	if(forced){
		element.style.visibility=forced;
	}else{
		if(element.style.visibility=='visible'){
			element.style.visibility='hidden';
		}else{
			element.style.visibility='visible';
		}
	}

	// hier volgt de hack van de snelzoeken-layer. Snelzoeken valt altijd over alles heen.

/*
	if (el=='zoekLayer') {
		if (element.style.visibility!='hidden') {
			document.getElementById('zoekbox_container2').style.bottom='-132px';
			document.getElementById('zoekbox_container2').style._bottom='-144px';
			element.style.height='120px';
			//document.getElementById('header').style.zIndex='999';
		} else {
			document.getElementById('zoekbox_container2').style.bottom='-12px';
			document.getElementById('zoekbox_container2').style._bottom='-24px';
			element.style.height='0px';
			//document.getElementById('header').style.zIndex='-999';
		}
	}
*/
}


function noFlashSplash() {
	document.getElementById("flashSplash").style.display = "none";
}

function ValidateNumber(scale, bNonNegative) {
	if (window.event) {
		var keyCode = window.event.keyCode;
		var typedChar = String.fromCharCode(keyCode);
		var allowedChars = '.1234567890';
		if (scale > 0) allowedChars += ',';
		if (!bNonNegative) allowedChars += '-';
		var bValid = (keyCode <= 31) || (allowedChars.indexOf(typedChar) >= 0);
		return bValid;
	}
}

function checkEmail(email) {
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	return (filter.test(email));
}

function $(id) {
	return document.getElementById(id);
}


function CreateBookmarkLink(url, title) {
	//if (title=='') { title='My first homepage'; }
	//if (url=='') { url='http://www.google.nl/';}
	if (window.sidebar) {
		// Mozilla Firefox Bookmark
		//alert("FIREFOX!");
		alert('Gebruik de sneltoets CTRL+D om de website aan uw bladwijzers toe te voegen.');
		//window.sidebar.addPanel(title, url,"");
	} else if( window.external ) {
		// IE Favorite
		if(document.all){
			window.external.AddFavorite(url, title);
		}
	}
	else if(window.opera && window.print) {
		// Opera Hotlist
		return true;
	}
}

function unCheckAll(elementId) {
	// Verwijdert alle selecties in een multiple select
	var selectObj=document.getElementById(elementId);
	if (selectObj!=null) {
		for (var i=0; i < selectObj.options.length; i++) {
			selectObj.options[i].selected=false;
		}
	}
}

function doorklikken(paginaId,url) {
	// wordt aangeroepen vanuit het navigatiemenu.
	// sommige items in het menu kun je niet kiezen, wel de subitems.
	var result=true;

	// dit geldt voor 'Over BKV', 'Onze diensten' en 'Aanvullende diensten' en 'Arbeidsvormen' en 'Samenwerkingsvormen'
	// let op. lijst ook in pad.php aanpassen.
	var id_nl = new Array(199,335,345, 388,389, 430,435, 434, 488 );
	var id_en = new Array(403,423, 409,413, 444, 448, 503);
	var id_de = new Array(643,652, 659,663, 680, 708, 699);

	for (var i=0; i<id_nl.length; i++) {
		//alert(id_nl + '+' + paginaId);
		if (id_nl[i]==paginaId) {
			return;
		}
	}

	for (var i=0; i<id_en.length; i++) {
		if (id_en[i]==paginaId) {
			return;
		}
	}

	for (var i=0; i<id_de.length; i++) {
		if (id_de[i]==paginaId) {
			return;
		}
	}


	window.location.href=url;
}


function ValidateFormMultipleInputRadio(formElements) {
	// E-sites // A.M.
	// deze functie loopt door alle formuliervelden en checkt of het een radio-input veld is.
	// zoja dan wordt gechecked of er een keuze gemaakt. Als er geen keuze gemaakt is, dan is het resultaat false, anders true.

	for (var i=0;i<formElements.length;i++) {
		if (formElements[i].type=='radio') {
			var r=formElements[formElements[i].name], q=true;
			for (var j=0;j<r.length;j++) {
				r[j].checked ? q=false : null;
			}
			if (q) {
				return false;
			}
		}
	}
	return true;
}

function SelectRemoveOptions(elementId) {
	// Verwijdert alle opties in een select
	var selectObj=document.getElementById(elementId);
	if (selectObj!=null) {
		var i;
		for (i=selectObj.length; i>=0; i--) {
			selectObj.remove(0);
		}
	}
}

function SelectAddOption(elementId,name,value,selected) {
	// voegt een option toe aan het einde van een select.
	var selectObj=document.getElementById(elementId);
	if (selectObj!=null) {
		var selectOptionObj=document.createElement('option');
		selectOptionObj.text=name;
		selectOptionObj.value=value;
		if(selected == 'true'){
			selectOptionObj.selected = true;
		}
		try {
			selectObj.add(selectOptionObj, null); 					// standards compliant; doesn't work in IE
        } catch(ex) {
			selectObj.add(selectOptionObj);    // IE only
		}
	}
}

function SelectAddOptionToOptgroup(elementId,name,value,selected) {
	var selectObj=document.getElementById(elementId);
	if (selectObj!=null) {
		var selectOptionObj=document.createElement('option');
		selectOptionObj.appendChild(document.createTextNode(name));
		selectOptionObj.text = name;
		selectOptionObj.value = value;
		if(selected == 'true'){
			selectOptionObj.selected = true;
		}
		try {
			selectObj.appendChild(selectOptionObj, null); 
        } catch(ex) {
			selectObj.appendChild(selectOptionObj);
		}
	}
}

function SelectAddOptgroup(elementId,name,id) {
	var selectObj = document.getElementById(elementId);
	if (selectObj!=null) {
		var selectOptionObj=document.createElement('optgroup');
		selectOptionObj.label = name;
		selectOptionObj.id = id;
		try {
			selectObj.appendChild(selectOptionObj, null);
        } catch(ex) {
			selectObj.appendChild(selectOptionObj);
		}
	}
}

function SelectActiveOption(elementId, activeValue) {
	// voegt een option toe aan het einde van een select.
	var selectObj=document.getElementById(elementId);
	if (selectObj!=null) {
		for(var i = 0; i < selectObj.childNodes.length; i++) {
			if(selectObj.childNodes[i].value == activeValue) {
				selectObj.childNodes[i].selected = true;
			//	window.alert(option.value);
			}
		}
	//	window.alert(activeValue);
	//	selectObj.options[optionIndex].selected = true;
	}
}

function RemoveSelectChildren(elementId)
{
	var selectObj = document.getElementById(elementId);
	// Remove all options first
	while (selectObj.hasChildNodes()) {
		selectObj.removeChild(selectObj.firstChild);
	}
}

function DisableSelectOption(elementId, activeValue) {
	var selectObj = document.getElementById(elementId);
	if (selectObj != null) {
		//window.alert(activeValue);
		if(activeValue == 'true'){
			selectObj.disabled = true;
			selectObj.enabled = false;
		} else {
			selectObj.disabled = false;
			selectObj.enabled = true;
		}
	}
}


/*** Open Dialog ***/
function modelessDialogShow(url,width,height)
{	window.showModelessDialog(url,window,
		"dialogWidth:"+width+"px;dialogHeight:"+height+"px;edge:Raised;center:1;help:0;resizable:1;");
}
function modalDialogShow(url,width,height)
{	window.showModalDialog(url,window,
		"dialogWidth:"+width+"px;dialogHeight:"+height+"px;edge:Raised;center:1;help:0;resizable:1;maximize:1");
}

function windowOpen(url,width,height)
{	window.open(url,"","width="+width+"px,height="+height+"px;toolbar=no,menubar=no,location=no,directories=no,status=yes,scrollbars=yes")
}


function checkSpecialisme(elementId)
{
	var selectObj=document.getElementById(elementId);
	if(selectObj.value != 0){
		if(elementId == "klinischFuncties"){
			document.getElementById("nietklinischFuncties").disabled = true;
			//document.getElementById("idKlinisch").value = "klinisch";
			selectObj.disabled = false;
		} else {
			document.getElementById("klinischFuncties").disabled = true;
			//document.getElementById("idKlinisch").value = "nietklinisch";
			selectObj.disabled = false;
		}
	} else {
		document.getElementById("klinischFuncties").disabled = false;
		document.getElementById("nietklinischFuncties").disabled = false;
	}
}

function checkDatum(dagveld, maandveld, jaarveld)
{
	var maandindex = maandveld.selectedIndex;
	var aantalDagenInMaand = new Array(30, 27, 30, 29, 30, 29, 30, 30, 29, 30, 29, 30);	// indexen zijn aantal dagen -1

	// schrikkeljaar, zet dagindex februari op 28
	if ((jaarveld.value % 4 == 0 && jaarveld.value % 100 != 0) || jaarveld.value % 400 == 0) {
		aantalDagenInMaand[1] = 28;
	}
	if(dagveld.selectedIndex > aantalDagenInMaand[maandindex]) {
		if(maandindex == 1) {
			// februari, zet dagindex op 27/28
			dagveld.selectedIndex = aantalDagenInMaand[1];
		} else {
			// 30-dagen maand, zet dagindex op 29
			dagveld.selectedIndex = aantalDagenInMaand[maandindex];
		}
	}
}

function viewBkvacatures(tonen, tekst){
	var selectObj = document.getElementById('contactBtn');
	if(tonen == 'ja'){
		selectObj.value = tekst;
	} else {
		selectObj.value = tekst;
	}
}

function getMultipleSelection(formName, elementName, array)
{
	var selected = new Array(); 
	var mySelect = document.forms[formName].elements[elementName]; 
	for(j = 0; j < mySelect.options.length; j++) { 
		if(mySelect.options[j].selected) { 
			selected.push(mySelect.options[j].value); 
		} 
	} 
	if(array != 'true'){
		return selected.toString();
	} else { 
		return selected; 
	}
}	