/* TO and POG - submit forms on ENTER key event */
function submitFormsonEnter(e,form) {
	var evt = (e)?e:(window.event)?window.event:null;
	if (evt) {
		var key = (evt.charCode)?evt.charCode:((evt.keyCode)?evt.keyCode:((evt.which)?evt.which:0));
		if (key == 13) {
			if (form.name == 'pogLogin' || form.name == 'loginExtranet')
				form.submit();
			else
				return false;
		} else
			return true;
	}
}

/* TO and POG - print function */
function printPage(site) {
	//niet printen in admindeel
	if (/\/admin\//.test(document.location)) {
	  alert('Printen is niet mogelijk binnen de PageProcessor admin omgeving');
	  return false;
	}
	
	if (site == 'topondernemers') {
		var printtable = '<img src="/images/TopOndernemers/logo.gif"><br><hr class=lijntje><br><table cellspacing=5>';
		var templ = document.body.className;
		if (templ == 'vp') {
			var top = document.getElementById('section1').innerHTML;
			var topLeft = document.getElementById('section18').innerHTML;
			var topRight = document.getElementById('section19').innerHTML;
			var botLeft = document.getElementById('section14').innerHTML;
			var botMiddleLeft = document.getElementById('section15').innerHTML;
			var botMiddleRight = document.getElementById('section16').innerHTML;
			var botRight = document.getElementById('section17').innerHTML;
			
			printtable = printtable + '<tr><td colspan=4>'+top+'</td></tr>';
			printtable = printtable + '<tr><td colspan=2>'+topLeft+'</td><td colspan=2>'+topRight+'</td></tr>';
			printtable = printtable + '<tr><td>'+botLeft+'</td><td>'+botMiddleLeft+'</td><td>'+botMiddleRight+'</td><td>'+botRight+'</td></tr></table>';
		}
		if (templ == 'vv2kol') {
			var left = document.getElementById('section3').innerHTML;
			var right = document.getElementById('section4').innerHTML;
			
			printtable = printtable + '<tr><td>'+left+'</td><td>'+right+'</td></tr></table>';
		}
		if (templ == 'vv1kol') {
			var content = document.getElementById('section2').innerHTML;
			printtable = printtable + '<tr><td>'+content+'</td></tr></table>';
		}
	}
	//disable de links om bladeren via printversie te voorkomen
	window.printgedeelte = printtable;
	window.printgedeelte = window.printgedeelte.replace(/href/gi,"hrefdisabled");
	window.printgedeelte = window.printgedeelte.replace(/onclick/gi,"onclickdisabled");
	window.printgedeelte = window.printgedeelte.replace(/\<script(.*?)\<\/script\>/gi,"");
	window.printgedeelte = window.printgedeelte.replace(/\<object(.*?)\<\/object\>/gi,"");
	 
	//open popup en vul deze 
	var w =  window.open('/print_'+site+'.html');
}

/* TO and POG - display na-image */
function toon_afbeelding(el) {
	if (el) {
		el.onerror = '';
		el.src = '/images/not_available.gif';
	}
}
function toon_sfeerbeeld_nieuwsbrief(el) {
	if (el) {
		el.src = '/images/TopOndernemers/nieuwsbrief/sfeerbeeld.jpg';
	}
}

/* TO - toggle selectboxes visibility */
function setSelect(type) {
	var groepen = new Array();
	groepen['groep34'] = document.getElementById('groep34');
	groepen['groep56'] = document.getElementById('groep56');
	groepen['groep78'] = document.getElementById('groep78');
	groepen['opdrachttype_label'] = document.getElementById('opdrachttype_label');
	groepen['opdrachttype_select'] = document.getElementById('opdrachttype_select');
	
	for (var key in groepen) {
		if (typeof groepen[key] == "object")
			groepen[key].style.display = 'none';
	}
	if (typeof groepen[type] == "object") {
		groepen[type].style.display = 'block';
		if (type == 'groep56' || type == 'groep78') {
			groepen['opdrachttype_label'].style.display = 'block';
			groepen['opdrachttype_select'].style.display = 'block';
		}
	}
}

/* TO and POG - generic form submitter which uses the validation check */
function submitForm(formname) {
	form = document.forms[formname];
	if (form) {
		var validation = form.onsubmit();
		if (validation)
			form.submit();
	}
}

/* TO - set child selectbox value depending on the value of the parent selectbox */
function setSelectbox(val) {
	var td = document.getElementById('subcatselects');
	var nosubcat = document.getElementById('nosubcat')
	if (td && nosubcat) {
		var alltabs = nodes.childNodesBy(td,'tagName=SELECT');
		for (var i = 0; i < alltabs.length; i++) {
			if (alltabs[i].tagName == 'SELECT') {
				if (alltabs[i].id == val+'_sub') {
					alltabs[i].disabled = false;
					alltabs[i].name = 'subcat';
					alltabs[i].style.display = 'block';
					nosubcat.style.display = 'none';
					var flag = true;
				} else {
					alltabs[i].name = 'subcat_fake';
					alltabs[i].style.display = 'none';
					alltabs[i].disabled = true;
				}
			}
		}
		if (flag !== true)
			nosubcat.style.display = 'block';
	}
}

/* POG - publicatie carroussel rotator */
var carrousselTimer;
var carrousselCount = 0;

function rotateCarroussel (nr, automate) {
	if (!automate == true) {
		clearTimeout(carrousselTimer);
		carrousselCount = nr + 1;
		carrousselTimer = setTimeout(automateCarroussel,15000);
	}
	
	var publImage 		= document.getElementById('publImage');
	var publDesc  		= document.getElementById('publDesc');
	var publSlogan  	= document.getElementById('publSlogan');
	var publSubSlogan  	= document.getElementById('publSubSlogan');
	var publNavbar  	= document.getElementById('publNavbar');
	
	if (!publImage || !publDesc || !publSlogan || !publSubSlogan || !publNavbar)
		return false;
	
	if (imgArr.length < nr) {
		document.location.href = '/';
	} else {
		//set the active state of the button
		var ahrefs = publNavbar.getElementsByTagName("A");
		for (var i=0; i<ahrefs.length; i++) {
			var publNr = ahrefs[i].getAttribute("publNr");
	   		if (publNr == nr)
				ahrefs[i].className = 'active';
			else
				ahrefs[i].className = '';
		}
		
		//check if a next link is needed
		var nextlink = '';
		var nextlinkneeded = publDesc.getAttribute("nextlink");
		if (nextlinkneeded !== 'no') {
			var nextnr = nr + 1;
			if (nextnr < descArr.length)
				nextlink = '<br><a href="javascript:rotateCarroussel('+nextnr+');">Volgende stap</a>';
		}
		
		//set the correct content
		publImage.src = imgArr[nr];
		publDesc.innerHTML = descArr[nr] + nextlink;
		publSlogan.innerHTML = sloganArr[nr];
		publSubSlogan.innerHTML = subsloganArr[nr];
		
		//rerun sIFR to display the nice fonts
		if (nextlinkneeded !== 'no')
			sIFR.replace(kopArialRounded, { selector: '.publDesc h1',css:{'.sIFR-root': {'color':'#ce0006', 'font-size':'18' } } } );
		else
			sIFR.replace(kopArialRounded, { selector: '.publDesc h1',css:{'.sIFR-root': {'color':'#170c72', 'font-size':'18' } } } );
	}
}

function automateCarroussel() {
	if (imgArr.length > 0) {
		if ((carrousselCount + 1) > imgArr.length)
			carrousselCount = 0;

		rotateCarroussel(carrousselCount,true);
		carrousselCount++;

		carrousselTimer = setTimeout(automateCarroussel,7000);
	}
}


/* set the height of some elements to 100% */
function initHeights() {
	var mainsite = document.getElementById('mainsite');
	var maintable = document.getElementById('maintable');
	var contentBottom = document.getElementById('contentBottom');
	var contentLeft = document.getElementById('contentLeft');
	var containervv = document.getElementById('containervv');
	var windowheight = getWindowHeight();
	var scrollheight = document.body.scrollHeight;

	if (windowheight < scrollheight) {
		setElementHeight(mainsite,false,scrollheight);
		setElementHeight(contentLeft,containervv,scrollheight);
	} else {
		setElementHeight(maintable,maintable,windowheight);
		setElementHeight(contentLeft,containervv,windowheight);
	}
}

/* set the height of a given element */
function setElementHeight(el,elMargin,height) {
	if (el) {
		if (elMargin)
			var margintop = getStyle(elMargin,'top');
		if (isNaN(margintop))
			el.style.height = (height) + 'px';
		else {
			var h = height - margintop;
			el.style.height = (h<1?0:h) + 'px';
		}
	}
}

/* get the window height */
function getWindowHeight() {
	var windowHeight=0;
	if (typeof(window.innerHeight)=='number') {
		windowHeight=window.innerHeight;
	} else {
		if (document.documentElement && document.documentElement.clientHeight) {
			windowHeight = document.documentElement.clientHeight;
		} else {
			if (document.body&&document.body.clientHeight)
				windowHeight=document.body.clientHeight;
		}
	}
	return windowHeight;
}

/* give back the computed style */
function getStyle(obj,Attribute) {
	if (obj) {
		if (obj.currentStyle)
			var value = eval('obj.currentStyle.'+Attribute)
		else
			var value = eval('document.defaultView.getComputedStyle(obj, null).'+Attribute)
		return parseInt(value);
	}
}

/* initialise the styleswitcher (/clientjs/styleswitcher.js) */
function initStyleSwitch() {
	var cookie = readCookie("style");
	if (cookie == 'null')
		var title = getPreferredStyleSheet();
	else
		var title = cookie;
	setActiveStyleSheet(title);
}

// plaats een klein icoontje achter een externe link en achter links die naar bestanden wijzen
// standaard: http://, ftp://, mailto:, doc, xls, pdf, de icoontjes staan in de dir css/images/
function initIconLinks() {
	if (/\/admin\//.test(document.location))
		return false;
	if (typeof tagAhref !== "undefined") {
		tagAhref.setType('doc');
		tagAhref.setType('docx');
		tagAhref.setType('xls');
		tagAhref.setType('xlsx');
		tagAhref.setType('pdf');
		tagAhref.setType('jpg');
		tagAhref.left = true;
		tagAhref.top = 'top';
		tagAhref.padding = '20';
		tagAhref.localurl = false;
		tagAhref.externurl = false;
		tagAhref.init('mainsite');
	}
}

function initFormInputFields() {
	var mainsite = document.getElementById('mainsite');
	if (mainsite) {
		var allInputs = mainsite.getElementsByTagName("INPUT");
		for (var i = 0; i < allInputs.length; i++) {
			if (allInputs[i].type == 'text' || allInputs[i].type == 'password') {
				allInputs[i].onkeypress = function() { return submitFormsonEnter(arguments[0],this.form); };
			}
		}
	}
}

function initAll(template) {
	initHeights();
	initStyleSwitch();
	initIconLinks();
	initFormInputFields();
	if (template !== 1 && template !== 5) {
		if (typeof initLytebox !== "undefined")
			initLytebox();
	}
}
