
/* -------------------------------------------------- */

function doResize() {
	moveTopNav();
//	resizeIframe();
}

function resizeIFrame() {
            var currentfr=document.getElementById('frame');
            
            if (currentfr && !window.opera){
            			
                       if (!currentfr.contentDocument && !currentfr.Document) return;
                        if (currentfr.contentDocument && currentfr.contentDocument.body && currentfr.contentDocument.body.offsetHeight) {
                                    currentfr.height = currentfr.contentDocument.body.offsetHeight + 50;
						}
                        else if (currentfr.Document && currentfr.Document.body.scrollHeight) {
                                    currentfr.height = currentfr.Document.body.scrollHeight + 50;
                        }           
            }
}

function moveTopNav() {
	var breedte = document.documentElement.clientWidth;

	if (breedte < 940) {
		$('topNavTabs').style.marginLeft = '0px'
	} else {
		$('topNavTabs').style.marginLeft = '234px'
	}
}

function isChild(ancestor, candidate) {
	while (candidate && candidate != ancestor.parentNode) {
		if (candidate == ancestor) return true;
		candidate = candidate.parentNode;
	}
	return false;
}


function initFade(objId)
{
	for (var i=1;i<11;i++) {
		// nTimeout[i] = setTimeout('setOpacity(' + (10-i) + ')',i*50);
		nTimeout[i] = setTimeout('setOpacity(\'' + objId + '\',' + (10-i) + ')',i*50);
	}
		
	return false;
}

function clearFade() {
	for (var n=0;n<=11;n++) {
		if (nTimeout[n]!=-1) {
			clearTimeout(nTimeout[n]);
			nTimeout[n]=-1;
		}
	}
}

function setOpacity(myObjId,value)
{
	//hm = document.getElementById('hoverMenu');
	hm = document.getElementById(myObjId);
	
	hm.style.opacity = value/10;
	hm.style.filter = 'alpha(opacity=' + value*10 + ')';	// 'alpha(opacity=' + value*10 + ')';
	
	if (value == 0) {
		hm.style.display = 'none';
	}
}

/* -------------------------- doelgroep hovering ------------------------ */

var mouseOverDoelgroep = false;
var mouseOverHover = false;
var hoverY = 0;
var activeMenu;
var activeMenuLast;

var nTimeout = new Array(11);
for (var n=0;n<=11;n++) nTimeout[n]=-1;

function showHoverMenu(hm) {
	clearFade()
	hm.style.display = 'block';
	hm.style.opacity = 0.99;
	hm.style.filter = 'alpha(opacity=100)';	
	activeMenu.className = 'doelgroepHover' + activeMenuLast;
}


function handleHoverMouseOver() {
	hm = document.getElementById('hoverMenu')
	mouseOverHover = true;

	showHoverMenu(hm)	;
}

function showDoelgroepHover() { 
	var hm = document.getElementById('hoverMenu')
	mouseOverDoelgroep = true;
	if (hm) {
		hm.style.top = hoverY + 'px';

		showHoverMenu(hm);

		hm.onmouseover = handleHoverMouseOver;
		hm.onmouseout =  hideHover;	
	}
}

function checkDoelgroepHide() {
	if (!mouseOverHover && !mouseOverDoelgroep) {
		initFade('hoverMenu');
	}
}

function hideDoelgroepHover() {
	var hoverMenu = document.getElementById('hoverMenu')
	mouseOverDoelgroep = false;
	if (hoverMenu) {
		setTimeout("checkDoelgroepHide()",250);
	}
	activeMenu.className = 'doelgroepActive' + activeMenuLast;
}

function activateDoelgroepHovering() {

	var entries = document.getElementsByTagName('li');
	for (var i = 0; i < entries.length; i++) {
		if (entries[i].className.indexOf("doelgroepActive") != -1) { //  == "doelgroepActive") {
			hoverY = entries[i].offsetTop;
			
			activeMenu = entries[i];
			var sClassName = activeMenu.className;
			if (sClassName.indexOf("last") != -1) {
				activeMenuLast = " last"
			} else {
				activeMenuLast = ""
			}
	
			entries[i].onmouseover = showDoelgroepHover;
			entries[i].onmouseout = hideDoelgroepHover;
		}
	}
}

function checkOutDoelgroep () {
	if (!mouseOverDoelgroep) {
		initFade('hoverMenu');
	}
	mouseOverHover = false;
}


function hideHover (e) {
	if (e) var dest = e.relatedTarget; else var dest = window.event.toElement;
	if (!isChild(this, dest)) {
		setTimeout(checkOutDoelgroep,250);
		activeMenu.className = 'doelgroepActive' + activeMenuLast;
	}
	if (e) e.cancelBubble = true; else window.event.cancelBubble = true;
}


/* -------------------------- pijler hovering ------------------------ */

function togglePijlerBannerHover (obj, waarde) {
	for (var n = 0; n < obj.childNodes.length; n++) {
		if (obj.childNodes[n].nodeType == 1) { // check for HTML nodes only
			if (obj.childNodes[n].className == 'pijlerBannerHover') { // check for HTML nodes only
				obj.childNodes[n].style.display = waarde;
			}
		}
	}
}

function showPijler (e) {
	togglePijlerBannerHover (this, 'block');
}

function hidePijler (e) {
	if (e) var dest = e.relatedTarget; else var dest = window.event.toElement;
	if (!isChild(this, dest)) {
		togglePijlerBannerHover (this, 'none');
	}
	if (e) e.cancelBubble = true; else window.event.cancelBubble = true;
}

function activatePijlerHovering() {
	var entries = document.getElementsByTagName('div');
	for (var i = 0; i < entries.length; i++) {
		if (entries[i].className == "pijlerBanner") {

			entries[i].onmouseover = showPijler;
			entries[i].onmouseout = hidePijler;

		}
	}
}
/* -------------------------------------------------------------------- */

function setBackgroundOmhullend() {
	var objDiv = $('blokApplication')
	if (objDiv)
		$('omhullend').style.backgroundImage = 'url(/static/internet/img/style/bg_home.gif)';
}


/* -------------------------------------------------------------------- */

function artikelSubnavigatie() {
	var objNav = document.getElementById('artikelSubnav');
	if (objNav) {
		var objArtikel = document.getElementById('artikel_1');
		if (objArtikel) {
			objArtikel.style.display = 'block';
		}
	}
}


function artikelClassClear() {
	var oSubNavChildren = document.getElementById('artikelSubnav').childNodes;

	for (n=0;n<oSubNavChildren.length;n++) {
		if (oSubNavChildren[n].tagName == 'DIV' ) {
			var oDivNodes = oSubNavChildren[n].childNodes;
			for (x=0;x<oDivNodes.length;x++) {
				if (oDivNodes[x].tagName == 'UL') {
					var oUlNodes = oDivNodes[x].childNodes;
					for (y=0;y<oUlNodes.length;y++) {
						if (oUlNodes[y].tagName == 'LI') {
							oUlNodes[y].className = '';
						}
					}
				}
			}
		}
	}
}

function toonArtikel(nArtikel,oThis) {
	var objFound = true;
	
	for (n=1;objFound;n++) {
		var objArtikel = document.getElementById('artikel_'+ n);
		if (objArtikel) {
			if (n == nArtikel) 
				objArtikel.style.display = 'block';
			else
				objArtikel.style.display = 'none';
			
		} else 
			objFound = false; // end the loop
	}

	artikelClassClear();

	if (oThis) oThis.parentNode.className = 'active';
}

function artikelNavigatie(nWaarde) {
	/* controleer welk artikel actief is */
	var objNav = document.getElementById('artikelSubnav');

	var artikelFound = true;
	var nArtikelen = 0;
	var nArtikelActief = -1;
	var objArtikel;
	
	if (objNav) {
		for (n=1;(artikelFound);n++) {
			objArtikel = document.getElementById('artikel_' + n);
			if (objArtikel) {
				nArtikelen++;
				if (objArtikel.style.display == 'block') {
					nArtikelActief = n;
				}
			} else {
				artikelFound = false
			}
		}
	}
	
	if (nArtikelActief > -1) {
		var nTarget;
		if (nWaarde == 0) 
			nTarget = 1
		else {
			nTarget = nArtikelActief + nWaarde;
		}
		
		if (nTarget>=1 && nTarget<=nArtikelen) {
			toonArtikel(nTarget);
			document.getElementById('artikelNav_' + nTarget).className = 'active';
		}
	}
}

/* -------------------------------------------------------------------- */
function formTabSwitch() {
	var id = this.id;
	
	n = id.charAt(id.length-1);
	
	if (n==0) {
		document.getElementById('formSwitch_1').style.display = 'none';
		document.getElementById('formSelect_1').parentNode.className = '';
		document.getElementById('formSwitch_0').style.display = 'block';
		// document.getElementById('formSwitch_0').style.

		
	} else {
		document.getElementById('formSwitch_0').style.display = 'none';	
		document.getElementById('formSelect_0').parentNode.className = '';		
		document.getElementById('formSwitch_1').style.display = 'block';	
	}
	this.blur();
	this.parentNode.className = 'active';
}

function zoekFormTabs() {	/* opleidingwijzer of gewone zoekscherm */
	var obj = document.getElementById('zoekFormTabs');
	if (obj) {
		document.getElementById('formSelect_0').onclick = formTabSwitch;
		document.getElementById('formSelect_1').onclick = formTabSwitch;
	}
}
/* -------------------------------------------------------------------- */

function groepen(lOpen) {
	var oGroepen = $('groepen');
	var n;
	if (oGroepen) { 	/* div 'groepen' bestaat */
		oGroepenChildren = oGroepen.childNodes;
		for (n=0;n<oGroepenChildren.length;n++) {
			if (oGroepenChildren[n].tagName == 'H2') {
				groepToggle(false, oGroepenChildren[n], lOpen)
			}
		}
	}
}

function groepenOpen() { groepen(true) }
function groepenDicht() { groepen(false) }

function groepToggle(e, objH2, lOpen) {
	/* 
		span aanpassen (+ wordt -, - wordt +) 
		onderliggende blok aanpassen (open of dicht)
	*/
	
	if (!objH2) {	// geen variabele ontvangen bij de fuction-call, dus een klik op de groep zelf
		var oH2 = this.parentNode;
	} else {
		var oH2 = objH2;
	}
		
	var oH2nodes = oH2.childNodes; /* nodes in de H2 , dus SPAN en A */
	var n;
	var sHtml;
	var sDisplay;
	var m;
	var oAnodes;
	
	for (n=0;n<oH2nodes.length;n++) {
		if (oH2nodes[n].tagName == 'A') {
		
			oAnodes = oH2nodes[n].childNodes;
			for (m=0;m<oAnodes.length;m++) {
				if (oAnodes[m].tagName == 'SPAN') {
					if (!objH2) // gewoon een klik op de groep, geen algehele open- of dicht-actie
						sHtml = oAnodes[m].innerHTML
					else {		// alles open of dicht:
						if (lOpen) 
							sHtml = '+'
						else
							sHtml = '-';
					}

					if (sHtml == '+') {
						oAnodes[m].innerHTML = '-'
						sDisplay = 'block'
					}
					else {
						oAnodes[m].innerHTML = '+'
						sDisplay = 'none'
					}
				
				}
			}
		}
	}

	var nextObj = oH2.nextSibling;
	
	while (nextObj.nodeName != 'DIV') { /* firefox issue , firefox geeft eerst een #text node */
		nextObj = nextObj.nextSibling;  
	}	
	
	var oDivs = nextObj.childNodes;
	for (n=0;n<oDivs.length;n++) {
		if (oDivs[n].tagName == 'DIV') 
			oDivs[n].style.display = sDisplay;
	}
	// this.blur();
}

function addEventH2(oH2) { /* zoek binnen deze H2 de A-tag en voeg event toe */
	var n
	var oChildren = oH2.childNodes
	for (n=0;n<oChildren.length;n++) {
		if (oChildren[n].tagName == 'A' )
			oChildren[n].onclick = groepToggle
	}
}

function groepSwitches() {
	var oGroepen = $('groepen');
	var n;
	if (oGroepen) { 	/* div 'groepen' bestaat */
		oGroepenChildren = oGroepen.childNodes;
		for (n=0;n<oGroepenChildren.length;n++) {
			if (oGroepenChildren[n].tagName == 'H2') addEventH2(oGroepenChildren[n])
		}
	}
	
	var allesOpenDicht = $('medewerkersOpenDicht');
	if (allesOpenDicht) {
		$('medewerkersOpen').onclick = groepenOpen;
		$('medewerkersDicht').onclick = groepenDicht;
	}
}

/* Slider code */
function nextSlide(teller) {
	var objSlide = document.getElementById('slide_'+teller);
	var objNextSlide = document.getElementById('slide_'+(teller+1));
	if (objSlide) {
		objSlide.style.display = 'none';
		if (objNextSlide) {
			objNextSlide.style.display = '';
		} else {
			var objFirstSlide = document.getElementById('slide_0');
			objFirstSlide.style.display = '';
		}
	}
}

/* -------------------------------------------------------------------- */

function showHideHelp(obj,lShow) {
	var oDiv , oChild, n, sDisplay;
	oDiv = obj.parentElement.parentElement; /* hoofd Div */
	oChild = oDiv.childNodes;
	
	
	if (lShow) sDisplay = 'block'; else display = 'none';
	
	for (n=0;n<oChild.length;n++) {
		if (oChild[n].className == 'help') {
			oChild[n].style.display = sDisplay; 
		} 
	}
	
}

function showHelp() {
	var oDiv , oChild, n, sDisplay;
	oDiv = this.parentNode.parentNode; /* hoofd Div */
	oChild = oDiv.childNodes;
	
	
	sDisplay = 'block'; 
	
	for (n=0;n<oChild.length;n++) {
		if (oChild[n].className == 'helpPopup') {
			//oChild[n].style.display = sDisplay; 
			oChild[n].style.visibility = 'visible';
		} 
	}
}

function hideHelp() {
	var oDiv , oChild, n, sDisplay;
	oDiv = this.parentNode.parentNode; /* hoofd Div */
	oChild = oDiv.childNodes;
	
	
	sDisplay = 'none';
	
	for (n=0;n<oChild.length;n++) {
		if (oChild[n].className == 'helpPopup') {
			// oChild[n].style.display = sDisplay; 
			oChild[n].style.visibility = 'hidden';
		} 
	}
}


function activateHelp() {
	var entries = document.getElementsByTagName('a');
	for (var i = 0; i < entries.length; i++) {
		if (entries[i].className == "help") {

			entries[i].onmouseover = showHelp;
			entries[i].onmouseout = hideHelp;

		}
	}
}

function checkSearchForm() {
	if (!document.getElementById('searchString').value 
		//||(document.getElementById('searchString').firstClick == true)
		) {
		alert("Vul alstublieft een zoekopdracht in.");
		return false;
	} else {
		return true;
	}
}

function initZoek() {
	if (document.getElementById('searchString')) {
		document.getElementById('searchString').firstClick = true;
		document.getElementById('searchString').onfocus = function () {
			if (this.firstClick) {
				this.value="";
				this.firstClick = false;
			}
		}
	}
	/*
	if (document.getElementById('zoekForm')) {
		document.getElementById('zoekForm').onsubmit = function () {
			if (!document.getElementById('searchString').value ||
				(document.getElementById('searchString').firstClick == true)) {
				alert("Zoek opdracht mag niet leeg zijn!");
				return false;
			} else {
				return true;
			}
		}
	}
	*/
}

/* -------------------------------------------------------------------- */

function doOnload() {
	//activateDoelgroepHovering();
	activatePijlerHovering();
	setBackgroundOmhullend();
	artikelSubnavigatie();		/* toont het eerste subartikel in het geval van artikel-navigatie */
	zoekFormTabs();
	groepSwitches();		/* medewerkers, open/dicht */
	initFontSize();
	activateHelp();
	initZoek();
}

window.onresize = doResize;
window.onload = doOnload;