/*
#########################################################
#
# default javascript functions for the entire site
#
# Copyright:		2000-2008 S-Inside
# Project:			Any website
# Platform:			Javascript
#
#########################################################
*/

window.onload = function() {
	if (navigator.appName == "Microsoft Internet Explorer") {
		var $htmlStyle = document.getElementsByTagName('html')[0].style;
		var $bodyStyle = document.body.style;
		
		$bodyStyle.scrollbarFaceColor = $htmlStyle.scrollbarFaceColor = $nScrollFaceColor;
		$bodyStyle.scrollbarArrowColor = $htmlStyle.scrollbarArrowColor = $nScrollArrowColor;
		$bodyStyle.scrollbarTrackColor = $htmlStyle.scrollbarTrackColor = $nScrollTrackColor;
		$bodyStyle.scrollbarShadowColor = $htmlStyle.scrollbarShadowColor = $nScrollShadowColor;
		$bodyStyle.scrollbarHighlightColor = $htmlStyle.scrollbarHighlightColor = $nScrollHighlightColor;
		$bodyStyle.scrollbar3dlightColor = $htmlStyle.scrollbar3dlightColor = $nScroll3dlightColor;
		$bodyStyle.scrollbarDarkshadowColor = $htmlStyle.scrollbarDarkshadowColor = $nScrollDarkshadowColor;
	}
	
	extraStartFunctions();
}

// common functions for all websites
if (top != self) self.location.href = $sHomepage;

function externalLinks() {
	var $aAnchors = document.getElementsByTagName("a");
	if (!document.getElementsByTagName) {
		// browser is to old
		return;
	}
	
	for (var i = 0; i < $aAnchors.length; i++) {
		var $sAnchor = $aAnchors[i];
		if ($sAnchor.getAttribute("href") &&  $sAnchor.getAttribute("rel") == "external") {
 			$sAnchor.target = "_blank";
		}
	}
	
	var $aForms = document.getElementsByTagName("form");
	for (var i = 0; i < $aForms.length; i++) {
		var $sForm = $aForms[i];
		if ($sForm.getAttribute("rel") == "external") {
 			$sForm.target = "_blank";
		}
	}
	
}

function MM_findObj(n, d) { //v4.0
	var p,i,x;  
	
	if(!d) {
		d=document; 
	}	
	if((p=n.indexOf("?"))>0&&parent.frames.length) {
		d=parent.frames[n.substring(p+1)].document; 
		n=n.substring(0,p);
	}	
	if(!(x=d[n])&&d.all) {
		x=d.all[n]; 
	}	
	for (i=0;!x&&i<d.forms.length;i++) {
		x=d.forms[i][n];
	}
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) {
		x=MM_findObj(n,d.layers[i].document);
	}
	if(!x && document.getElementById) {
		x=document.getElementById(n); 
	}
	return x;
}

function MM_showHideLayers() { //v3.0
  	var i,p,v,obj,args=MM_showHideLayers.arguments;
  
	for (i=0; i<(args.length-2); i+=3) {
		if ((obj=MM_findObj(args[i]))!=null) {
			v=args[i+2];
			if (obj.style) { 
				 obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v;
			}
    		obj.visibility=v; 
		}
	}
	
	if (document.getElementById("image_big")) {
		hideBigImage();
	}
	if (document.getElementById("menu_zIndex")) {
		if (v == 'visible') {
			document.getElementById("menu_zIndex").style.zIndex = 111;			
		} else {
			document.getElementById("menu_zIndex").style.zIndex = 11;
		}
	}
}
  
/*
	toon grote foto en vervaag de rest van de pagina 
	voorbeeld: onclick="showBigImage('consument_1.jpg',350,249, "some text");return false;"
*/ 
function showBigImage ($p_sImage, $p_nWidth, $p_nHeight, $p_sText) {
	//alert($p_nImage);
	var $sText = "";
	var $nWindowWidth = 0, $nWindowHeight = 0;
	var $nPosLeft = 0;
	var $nPosTop = 0;
	
	document.getElementById("image_big").innerHTML = "";
	
	if( typeof( window.pageYOffset ) == 'number' ) {
		//Netscape compliant
		$nPosTop = window.pageYOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		//DOM compliant
		$nPosTop = document.body.scrollTop;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		//IE6 standards compliant mode
		$nPosTop = document.documentElement.scrollTop;
	}
	
	if( typeof( window.innerWidth ) == 'number' ) {
		//Non-IE
		$nWindowWidth = window.innerWidth;
		$nWindowHeight = window.innerHeight;
	} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		//IE 6+ in 'standards compliant mode'
		$nWindowWidth = document.documentElement.clientWidth;
		$nWindowHeight = document.documentElement.clientHeight;
	} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		//IE 4 compatible
		$nWindowWidth = document.body.clientWidth;
		$nWindowHeight = document.body.clientHeight;
	}
	$nPosLeft = ($nWindowWidth - $p_nWidth + 100) / 2;
	
	if ($nPosLeft > 0) {
    	document.getElementById("image_big").style.left = parseInt($nPosLeft)+'px';
	}
	if ($nPosTop >= 0) {
		if ($nPosTop < 150) {
			$nPosTop += 120;
		} else if ($nPosTop > ($nWindowHeight - $p_nHeight)) {
			$nPosTop = $nWindowHeight - $p_nHeight - 100;
		}
		document.getElementById("image_big").style.top = parseInt($nPosTop)+'px';
	}
	
	fadeContent(2);
    
    $sText = "<img src='"+$p_sImage+"' width='"+$p_nWidth+"' height='"+$p_nHeight+"' border='0' ";
	$sText += "alt='Klik om te sluiten' title='Klik om te sluiten' />";
	
	// add extra text at the bottom of the image
	if (($p_sText) && ($p_sText.length > 0)) {
		$sText += "<p><b>"+$p_sText+"</b></p>";
	}
	
	document.getElementById("image_big").innerHTML = $sText;
    document.getElementById("image_big").style.display = "inline";
    
}

/* toon grote foto en vervaag de rest van de pagina, met doorklik */ 
function showNextBigImage ($p_nImage) {
	//alert($p_nImage);
	var $sText = "";
	var $sPrevious = "";
	var $sNext = "";
	var $nPos = $p_nImage - 1;
	
	if (($nPos - 1) >= 0) {
		$sPrevious = "<a href='#' class='link' onclick=\"showNextBigImage('"+($nPos)+"');return false;\"><<</a>";
	}
	if (($nPos + 1) < $nNextImages) {
		$sNext = "<a href='#' class='link' onclick=\"showNextBigImage('"+($nPos + 2)+"');return false;\">>></a>";
	}
	
	if (($nPos >= $nNextImages) || ($nPos < 0)) {
		$nPos = 0;
	}
	
	$sText = "<table cellpadding='0' cellspacing='0' border='0'>";
	$sText += "<tr><td colspan='2'><img src='"+$aNextImages[$nPos][0]+"' width='"+$aNextImages[$nPos][1]+"' height='"+$aNextImages[$nPos][2]+"' border='0' alt='Klik om te sluiten' title='Klik om te sluiten' /></td></tr>";
	$sText += "<tr><td align='left'> "+$sPrevious+" </td>";
	$sText += "<td align='right'> "+$sNext+" </td></tr>";
	$sText += "<tr><td colspan='2' align='center'>"+$aNextImages[$nPos][3]+"</td></tr></table>";
	
	fadeContent(2);
    document.getElementById("image_big").style.display = "inline";
    document.getElementById("image_big").innerHTML = $sText;
}

// hide the big image again
function hideBigImage () {
	fadeContent(10);
	if (document.getElementById("image_big")) {
		document.getElementById("image_big").style.display = "none";
		document.getElementById("image_big").innerHTML = "";
	}	
}

// fade site depending on p_nOpacity, 10 sets to complete visible again
function fadeContent($p_nOpacity) {
	var $sDisplay = "none";
	if ($p_nOpacity == 10) {
		$sDisplay = "inline";
	}
	
	if (document.getElementById("page")) {
		document.getElementById('page').style.opacity = $p_nOpacity/10;
		
		// deze veroorzaakt in IE7 lichtere letters, vooral bij titels zichtbaar
		// ligt aan opacity en cleartype 
		if ((document.getElementById('page').style.filter) || ($p_nOpacity < 10)) {
			// werkt in IE8 niet, heeft wel geen last meer van lichtere letters!
			document.getElementById('page').style.filter = 'alpha(opacity=' + $p_nOpacity*10 + ')';
		}
	}
	
	if (document.forms.length > 0) {
		// hide select boxes because they get in front of error div
		for (n = 0; n < document.forms.length; n++) {
			var $field = document.forms[n];
				
		    // loop through the fields of the form
			for (i = 0; i < $field.length; i++) {
				if (($field.elements[i].type == "select-one") && ($field.elements[i].name != "mce_editor_0_formatSelect")) {
					//alert($field.elements[i].name);
					if ($field.elements[i]) {
						$field.elements[i].style.display = $sDisplay;
					}
		     	}
		  	}
	  	}
  	}
}

// function to show news item
function showTextField ($p_sID) {
	if (document.getElementById($p_sID)) {
		if (document.getElementById($p_sID).style.display != "block") {
			document.getElementById($p_sID).style.display = "block";
		} else {
			document.getElementById($p_sID).style.display = "none";
		}
	}
}

// hide error field
function hideError () {	
	fadeContent(10);
	if (document.getElementById("foutmelding")) {
		document.getElementById("foutmelding").innerHTML = "";
		document.getElementById("foutmelding").style.display = "none";
	}	
}

// check CMS form input
function checkForm() {
	if (!document.getElementById("foutmelding")) {
		// no div with error id, return true to let php handle error
		return true;
	}
	var $sText = "", $sValue;
	var $nCounter = 0, $nPosLeft = 0, $nPosTop = 0, $nWindowWidth = 0;
	var $aMissing = new Array();
	
	
	var $sForm;
	if (document.forms['contact']) {
		$sForm = document.forms['contact'];
	} else if (document.getElementById("contact")) {
		$sForm = document.getElementById("contact");
	} else {
		// form not recognized, return true to let php handle error
		return true;
	}
	var $aRequired = $sForm.elements['required'].value.split(",");
	
	for($i = 0; $i < $aRequired.length; $i++) {
		$sValue = $sForm.elements[$aRequired[$i]].value;
		if ($sValue.length < 2) {
			$aMissing[$nCounter] = $aRequired[$i];
			$nCounter++;
		}
	}
	
	if ($nCounter > 0) {
		// we have empty required fields, show error
		if( typeof( window.pageYOffset ) == 'number' ) {
			//Netscape compliant
			$nPosTop = window.pageYOffset;
		} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
			//DOM compliant
			$nPosTop = document.body.scrollTop;
		} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
			//IE6 standards compliant mode
			$nPosTop = document.documentElement.scrollTop;
		}
		
		if( typeof( window.innerWidth ) == 'number' ) {
			//Non-IE
			$nWindowWidth = window.innerWidth;
			$nWindowHeight = window.innerHeight;
		} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
			//IE 6+ in 'standards compliant mode'
			$nWindowWidth = document.documentElement.clientWidth;
			$nWindowHeight = document.documentElement.clientHeight;
		} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
			//IE 4 compatible
			$nWindowWidth = document.body.clientWidth;
			$nWindowHeight = document.body.clientHeight;
		}
		// center at the middle of screen, minus the width of the div
		$nPosLeft = ($nWindowWidth - $nErrorBoxWidth) / 2;
		
		if ($nPosLeft > 0) {
	    	document.getElementById("foutmelding").style.left = parseInt($nPosLeft)+'px';
		}
		if ($nPosTop > 0) {
			if ($nPosTop < 150) {
				$nPosTop += 120;
			} else if ($nPosTop > ($nWindowHeight - $nErrorBoxHeight)) {
				$nPosTop = $nWindowHeight - $nErrorBoxHeight - 100;
			}
			document.getElementById("foutmelding").style.top = parseInt($nPosTop)+'px';
		}
		
		// fade rest of the page
		fadeContent(2);
		
		// create text with missing fields in bold		
		$sText += "<h4 class='normaltext'>Foutmelding</h4><p>De volgende verplichte velden zijn niet ingevuld:</p>";
		for($i = 0; $i < $aMissing.length; $i++) {
			$sText += "&nbsp;&nbsp;&nbsp;<b>"+$aMissing[$i]+"</b><br />";
		}
		$sText += "<p>Sluit dit venster door er op te klikken en vul de aangegeven velden correct in.</p>";
		$sText += "<img src='img/closelabel.gif' width='66' height='22' border='0' alt='' align='right' hspace='5' /><br /><br />";
		
		// show text in error div and show text
		document.getElementById("foutmelding").innerHTML = $sText;
	    document.getElementById("foutmelding").style.display = "inline";
		
		return false; 
		
	} else {
		// all required fields filled out, go on
		return true;
	}
}

/* Modified to support Opera */
function bookmarksite(title,url){
	if (window.sidebar) {
		// firefox
		//window.sidebar.addPanel(title, url, "");
		alert("Druk nu op Ctrl-D om onze pagina bij uw bladwijzers te zetten.");
	} else if (window.opera && window.print) { 
		// opera
		var elem = document.createElement('a');
		elem.setAttribute('href',url);
		elem.setAttribute('title',title);
		elem.setAttribute('rel','sidebar');
		elem.click();
	} else if(document.all) {
		// ie
		window.external.AddFavorite(url, title);
	}
}

function switchYearCalendar ($p_nYear, $p_nSite) {
	self.location.href = $p_nSite + $p_nYear;
}

// show big page and fade rest of site 
function showBigPage () {
	var $sText = "";
	var $sPrevious = "";
	var $sNext = "";
	
	if (parseInt(navigator.appVersion)>3) {
		if (navigator.appName=="Netscape") {
			$nWindowWidth = window.innerWidth;
		}
		if (navigator.appName.indexOf("Microsoft")!=-1) {
			$nWindowWidth = document.body.offsetWidth;
		}
	}
	$nPosLeft = ($nWindowWidth - 600) / 2;
	
	fadeContent(2);
    if ($nPosLeft > 0) {
    	document.getElementById("page_big").style.left = parseInt($nPosLeft)+'px';
	}
	
    document.getElementById("page_big").style.display = "inline";
    
}

function hideBigPage () {
	fadeContent(10);
	if (document.getElementById("page_big")) {
		document.getElementById("page_big").style.display = "none";
	}
	
	if (document.getElementById("foutmelding")) {
		document.getElementById("foutmelding").innerHTML = "";
		document.getElementById("foutmelding").style.display = "none";
	}
}

// functions to change photo in place, like www.ostrik.nl
function switchImage() {
	// create random number of image to start
	var $nImage = Math.floor(Math.random()*$nAmountImages);
	
	if (($nImage < 0) || ($nImage > $nAmountImages)) {
		$nImage = 0;
	}
	$nCounter = $nImage + 1;
	
	blendImage('blenddiv','blendimage', $aImages[$nImage], 100)
	var $vActiveImage = window.setInterval("setImage()", 6000);	
}


function blendImage($p_nDivID, $p_nImageID, $p_fileImage, $p_nMilliSec) {
    var $nSpeed = Math.round($p_nMilliSec / 100);
    var $nTimer = 0;

    //set the current image as background
    if (document.getElementById($p_nDivID)) {
    	document.getElementById($p_nDivID).style.backgroundImage = "url(" + document.getElementById($p_nImageID).src + ")";
    	
    	//make image transparent
	    changeOpacity(0, $p_nImageID);
	    
	    //make new image
	    document.getElementById($p_nImageID).src = $p_fileImage;
	
	    //fade in image
	    for(i = 0; i <= 100; i++) {
	        setTimeout("changeOpacity(" + i + ",'" + $p_nImageID + "')",($nTimer * $nSpeed));
	        $nTimer++;
	    }
	}
}

function fadeImage($p_sImageID, $p_nMilliSec) {
    var $nSpeed = Math.round($p_nMilliSec / 100);
    var $nTimer = 0;
    
    $nHome = window.setInterval("checkFadingImage('" + "fadeimage" + "')", 1000);
    
    //fade out image
	for($nCount = 100; $nCount >= 0; $nCount--) {
	    setTimeout("changeOpacity(" + $nCount + ",'" + $p_sImageID + "')",($nTimer * $nSpeed));
	    $nTimer++;
	}
}

function checkFadingImage ($p_sID) {
	var $objPhoto = document.getElementById($p_sID).style;
	var $objDiv = document.getElementById("fotohome").style
	
    if (($objPhoto.opacity) && ($objPhoto.opacity <= 20/100)) {
	    // IE and Firefox 3.0 >
	    $objDiv.display = "none";
	    window.clearInterval($nHome);
    } else if (($objPhoto.MozOpacity) && ($objPhoto.MozOpacity <= 0)) {
	    // Firefox
	    $objDiv.display = "none";
	    window.clearInterval($nHome);
    } else if (($objPhoto.KhtmlOpacity) && ($objPhoto.KhtmlOpacity <= 0)) {
	    // Linux with KDE
	    $objDiv.display = "none";
	    window.clearInterval($nHome);
    } else if ($objPhoto.object) {
	    alert($objPhoto.object.filter);
    }
}

//change the opacity for different browsers
function changeOpacity(opacity, id) {
	if (document.getElementById(id)) {
	    var $object = document.getElementById(id).style;
	    $object.opacity = (opacity / 100);
	    $object.MozOpacity = (opacity / 100);
	    $object.KhtmlOpacity = (opacity / 100);
	    $object.filter = "alpha(opacity=" + opacity + ")";
    }
}

function setImage() {
	blendImage('blenddiv','blendimage', $aImages[$nCounter], 4000);
	$nCounter++;
	
	if (navigator.appVersion.indexOf("MSIE")!=-1){ pause(250); } else { pause(100);} 
	if ($nCounter > $nAmountImages) {
		$nCounter = 0;
		if (!$bLoopEndless) {
			window.clearInterval($vActiveImage);
		}
	}
}

// pauses code execution for specified time. 
function pause(numberMillis) {
	var now = new Date();
	var exitTime = now.getTime() + numberMillis;
	while (true) {
		now = new Date();
		if (now.getTime() > exitTime)
			return;
	}
}

function pophtm(src,winwidth,winheight){
	var wLook='width='+winwidth+',height='+winheight+',resizable=yes,scrollbars=yes,toolbar=no,titlebar=no,status=no,menubar=yes'
	popwin=window.open(src,"",wLook)
}

function getCookie($p_sName) {
	if (document.cookie.length > 0) {
		var $nStart = document.cookie.indexOf($p_sName + "=");
		
		if ($nStart != -1) {
			$nStart = $nStart + $p_sName.length + 1;
			var $nEnd = document.cookie.indexOf(";",$nStart);
			if ($nEnd == -1) {
				$nEnd = document.cookie.length;
			}
			return unescape(document.cookie.substring($nStart, $nEnd));
		} 
	}
	return "";
}

function setCookie($p_sName,value,$p_nExpiredays) {
	var $dExpDate = new Date();
	
	$dExpDate.setDate($dExpDate.getDate() + $p_nExpiredays);
	document.cookie = $p_sName + "=" + escape(value) + (($p_nExpiredays==null) ? "" : ";expires=" + $dExpDate.toGMTString()) + ";path=/";
}

function deleteCookie() {
	setCookie('sitelanguage','',-60000);
}

function checkLanguage($p_sPage) {
	var $sSite = getCookie('sitelanguage');
	var $sPage = "";
	
	if (!$p_sPage) {
		$p_sPage = "";
	}
	
	if ($sSite != null) {
		if ($sSite == 'en') {
			$sSite = "";
		}
		if ($sSite.length == 2) {
			$sSite += "/";
		} 
		$sPage = $sURL+$sSite+$p_sPage;
		if (window.location.href.indexOf($sPage) == -1) {
			window.location = $sPage;
		}
	}
}

function changeLanguage() {
	var $sPage = "";
    deleteCookie();
	  
    setCookie('sitelanguage', document.forms['langselector'].elements['lang'].value, 365);	
	
	if ((document.forms['langselector'].elements['lang'].value.length == 2) && (document.forms['langselector'].elements['lang'].value != 'en')) {
		$sPage += document.forms['langselector'].elements['lang'].value+"/";
	}
	
	$sLocation = document.URL;
	
	if ($sLocation.lastIndexOf('\\') > 1) {
		$sPage += $sLocation.substring($sLocation.lastIndexOf('\\') + 1); // off line modus
	} else {
		$sPage += $sLocation.substring($sLocation.lastIndexOf('/') + 1); 
	}
	
	//alert ($sURL+$sPage);
	window.location = $sURL+$sPage;
	
}

function hideLanguageIMG() {
	if ((navigator.appCodeName == 'Mozilla') && (navigator.appName == 'Netscape')) {
		document.getElementById("flags").style.display = "none";	
		document.forms['langselector'].elements['lang'].focus();
	}
}

function showLanguageIMG() {
	if ((navigator.appCodeName == 'Mozilla') && (navigator.appName == 'Netscape')) {
		document.getElementById("flags").style.display = "inline";
	}
}