// domstuff
var base 				= '';
var AgntUsr				= navigator.userAgent.toLowerCase();
var DomYes				= document.getElementById?1:0;
var NavYes				= AgntUsr.indexOf('mozilla')!=-1&&AgntUsr.indexOf('compatible')==-1?1:0;
var ExpYes				= AgntUsr.indexOf('msie')!=-1?1:0;
var Opr			 		= AgntUsr.indexOf('opera')!=-1?1:0;
var DomNav				= DomYes&&NavYes?1:0;
var DomExp				= DomYes&&ExpYes?1:0;
var Nav4				= NavYes&&!DomYes&&document.layers?1:0;
var Exp4				= ExpYes&&!DomYes&&document.all?1:0;
browser = new Object();
browser. mac = navigator. appVersion. toLowerCase(). indexOf( 'mac' ) >= 0;
browser. win = navigator. appVersion. toLowerCase(). indexOf( 'win' ) >= 0;
browser. unix = navigator. appVersion. toLowerCase(). indexOf( 'unix' ) >= 0;
browser. ie = navigator. appName. toLowerCase(). indexOf( 'microsoft internet explorer' ) >= 0;
browser. ns = navigator. appName. toLowerCase(). indexOf( 'netscape' ) >= 0;
if( browser. ns ){ browser. version = parseFloat( navigator. appVersion );}
if( browser. ie ){browser. version = parseFloat( navigator. appVersion. substring( navigator. appVersion. toLowerCase(). indexOf( "msie" ) + 4 ) );}
//###########################################################################
//##   DHTML Crossbrowser stuff
//###########################################################################
if (Nav4 && browser.mac) {
  document.write ('<link rel="stylesheet" href="/styles/ns4mac.css" type="text/css">');
}else if (Nav4&& browser.win){
	document.write ('<link rel="stylesheet" href="/styles/ns4win.css" type="text/css">');
}else {
  document.write ('<link rel="stylesheet" href="/styles/rest.css" type="text/css">');
}

if( document. layers && window. Document && !window. Document. prototype. getElementById ){	
	var EventWatch = function(){var e = Event[ arguments[ 0 ]. substring( 2 ). toUpperCase() ];if( arguments[ 2 ] ){this. captureEvents( e );}else{this. releaseEvents( e );}return arguments[ 2 ];}
	window. document. watch( "onmousemove", EventWatch );
	setWidth = function(){arguments[ 0 ].width= arguments[1];}
  getHeight = function(){return arguments[ 0 ]. clip. height};
  getPageX = function(){if(!arguments[ 0 ]. pageX) return arguments[ 0 ].x; else return arguments[ 0 ]. pageX;}	
  getPageY = function(){if(!arguments[ 0 ]. pageY) return arguments[ 0 ].y; else return arguments[ 0 ]. pageY;}
  setPageX = function(){arguments[ 0 ]. pageX = arguments[1];}	
  setPageY = function(){arguments[ 0 ]. pageY= arguments[1];	}
  getLayer = function(){return document.layers[arguments[0]];	}
  setClip = function(){var l= arguments[ 0 ].clip;l.left =arguments[4];l.top =arguments[ 1 ];l.right = arguments[ 2 ];l.bottom = arguments[ 3 ]};
  writeMenus =function(){for(i=0;i<gmenus.length;i++){document.write('<layer visibility="hide" top="0" z-index="150" left="-1000" id="gmenu'+i+'" width="'+gmenus[i].gmenuWidth+'" name="gmenu'+i+'">' + gmenus[i].HTML+'</layer>')}};
  getWindowWidth = new Function( 'return window. innerWidth;' );
	getWindowHeight = new Function( 'return window. innerHeight;' );
}else{
	setWidth = function(){arguments[ 0 ].style.width= arguments[1];}
	getHeight = function(){return arguments[ 0 ]. offsetHeight};	
	setPageY = function(){arguments[ 0 ].style.top= arguments[1];	}
  setPageX = function(){arguments[ 0 ]. style.left = arguments[1];}
  setClip = function(){return true}
  writeMenus =function(){for(i=0;i<gmenus.length;i++){document.write('<div style="width:1px;display:block;top:0px;left:-1000px;position:absolute;z-index:150;" id="gmenu'+i+'" name="gmenu'+i+'">' + gmenus[i].HTML+'</div>');}};
	if(document.all){
    getWindowWidth = new Function( 'return window. document. body. clientWidth;' );
    getWindowHeight = new Function( 'return window. document. body. clientHeight;' );
		getLayer = function(){return document.all(arguments[0]);}
		if ( browser.mac && browser.version < 5 ){	
				 setPageY = function(){var l = arguments[ 0 ];var t = arguments[ 1 ];while( l. parentElement != null ){l = l. parentElement;t -= l. offsetTop;}arguments[ 0 ]. style. top = t;}
   			 setPageX = function(){var l = arguments[ 0 ];var t = arguments[ 1 ];while( l. parentElement != null ){l = l. parentElement;t -= l. offsetLeft;}arguments[ 0 ]. style. left = t;}
         getPageX = function(){var l = arguments[ 0 ];var t = 0;	while( l. parentElement != null ){	t += l. offsetLeft;l = l. parentElement;}return t;}
         getPageY = function(){var l = arguments[ 0 ];var t = 0;	while( l. parentElement != null ){t += l. offsetTop;l = l. parentElement;}return t;}
			 }else{	
    			getPageX = function(){ var l = arguments[ 0 ]; var t = 0; while( l. offsetParent != null ){ t += l. offsetLeft; l = l. offsetParent;}return t;}
    			getPageY = function(){ var l = arguments[ 0 ];var t = 0;while( l.offsetParent != null ){t += l. offsetTop;l = l. offsetParent;}return t;}
    			setClip = function(){arguments[ 0 ].style.clip = 'rect('+arguments[ 1 ]+','+arguments[ 2 ]+','+arguments[ 3 ]+','+arguments[ 4 ]+')';}
			 }
	}else{
   getPageX = function(){ var l = arguments[ 0 ]; var t = 0; while( l. offsetParent != null ){ t += l. offsetLeft; l = l. offsetParent;}return t;}
    			getPageY = function(){ var l = arguments[ 0 ];var t = 0;while( l.offsetParent != null ){t += l. offsetTop;l = l. offsetParent;}return t;}
   getLayer = function(){return document.getElementById(arguments[0]);	}
   getWindowWidth = new Function( 'return window. innerWidth;' );
   getWindowHeight = new Function( 'return window. innerHeight;' );
	}
}
//###########################################################################
//##   END DHTML Crossbrowser stuff
//###########################################################################


function body_onload() {
	preloadImage();
	menu_onload();
	if (document.forms.zoek && document.forms.zoek.words) {
		document.forms.zoek.words.onkeypress = function (evt) {
			var c = document.layers ? evt.which 
				: document.all ? event.keyCode
				: evt.keyCode;
			if (c == 13) zoek('');
		};
	}
	if (document.forms.loginform && document.forms.loginform.login && document.forms.loginform.password) {
		document.forms.loginform.login.onkeypress = document.forms.loginform.password.onkeypress = function (evt) {
			var c = document.layers ? evt.which 
				: document.all ? event.keyCode
				: evt.keyCode;
			if (c == 13) storeLogin();
		};
	}
	boxInit();
    //blackberry default init, o.a./zakelijk/grootzakelijk/diensten/blackberry.php
    if( document.getElementById && document.getElementById('blackberrynav') ){
        bbpageonload();
    }
}

function body_onresize() {
	if( Nav4 ) location.reload();
	boxInit();
}

function preloadImage(d){
	if(!d){
		var d = document;
	}
	for(var i =0; i< d.images.length; i++){
		if(d.images[i].src.indexOf('_out')>0){
			loadImage(d.images[i].src);
		}
	}
	if(d.layers && !document.getElementById){
		for (var  i = 0;i< d.layers.length; i++){
			preloadImage(d.layers[i].document);
		}
	}
}

function loadImage(src){
	var preImage = new Image();
	preImage.src =  src.substr(0, src.lastIndexOf('_out')) +'_over'+src.substr(src.lastIndexOf('.'), src.length);
}


// MouseOver stuff
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 swapImage( imageName, suffix ){
	var mi = MM_findObj(imageName);
	if( mi ){
		var is =  mi.src;
		var ex = is.substr(is.lastIndexOf('.'),is.length);
		var pad =(is.indexOf('_over') > 0 || is.indexOf('_out') > 0 ) ? is.substr(0, is.lastIndexOf('_')) : is.substr(0, is.lastIndexOf('.'));
		var state = (is.indexOf('_over') >0) ? '_out': '_over';
		if(!suffix)
			mi.src = pad + state + ex;
		else
			mi.src = pad + suffix + ex;
		//alert(pad);
	}
}

function replaceChars(str, oldChar, newChar) {
	newStr = '';
	for (i=0; i < str.length; i++) {
		if(str.charAt(i) == oldChar) {
			newStr += newChar;
		} else {
			newStr += str.charAt(i);
		}
	}
	return newStr;
}


/*used on the home and login page*/
function storeLogin() {
	strErr = '';
	f = document.forms.loginform;
	login = f.login.value;
	password = f.password.value.toLowerCase();
	
	while ((login.indexOf(" ") != -1) || (login.indexOf("-") != -1) || (login.indexOf("+") != -1) ){
		login = login.replace(" ", "") ;
		login = login.replace("-", "") ;
		login = login.replace("+", "") ;
	}
	
	var integer = /^\d+$/;
	if (!integer.test(login)){
		strErr = 'Type alleen de cijfers van je 06 nummer in\n';
	}

	if (password == '') {
		strErr += 'Vul je wachtwoord in';		
	}
	
	if (strErr != '') {
		alert(strErr);
	}else{
		writeCookie('login', login);
		f.submit();
	}
}

	function writeCookie(name, value) {
		// set expiration date three years from now....
		exp = new Date();
		nowPlusThreeYears = exp.getTime() + (3 * 365 * 24 * 60 * 60 * 1000);
		exp.setTime(nowPlusThreeYears);
		exp = exp.toGMTString();
		document.cookie = name + "=" + escape(value) + "; expires=" + exp + "; path=/";
	}
	
	function readCookie(name) {
		// read all cookies
		value = null;
		cookies = document.cookie.split('; ');
		for (i=0; i<cookies.length; i++) {
			equalsPos = cookies[i].indexOf('=');
			cookieName = cookies[i].substring(0, equalsPos);
			cookieValue = unescape(cookies[i].substring(equalsPos + 1, cookies[i].length));
			
			if(name==cookieName) value = cookieValue;
		}
		return value;
	}
	
	function removeCookie(name) {
		// remove cookie by setting the expiration date to yesterday and its value to -1
		exp = new Date();
		yesterday = exp.getTime() - (24 * 60 * 60 * 1000);
		exp.setTime(yesterday);
		exp = exp.toGMTString();
		document.cookie = name + "=-1; expires=" + exp + "; path=/";
	}
	
	
//// SEARCH
function zoek(value){
	var frm = document.forms.zoek;
	if (frm.words.value != value){
		window.open('/cgi-bin/htsearch?words='+ frm.words.value +'&config='+ frm.config.value +'&format='+ frm.format.value,'zoek','scrollbars=1,width=500,height=400');
	}
	else
	{alert('Vul een zoekterm in');}
}

function popValue(field, value){
	if (field.value == value){
		field.value = '';
	}
}

function pushValue(field, value){
	if (field.value == ''){
		field.value = value;
	}
}


//// SHOW/HIDE PRIJZEN LAYER by WouterG
if (Exp4) {
	document.getElementById = new Function('return document.all[arguments[0]');
}

function boxInit() {
	if (Nav4) {
		var aImgElements = document.images;
		var iCounter = 0;
		for (var i = 0; i < aImgElements.length; i++) {
			if (aImgElements[i].name && aImgElements[i].name.indexOf('boxButtonImg') > -1) {
				document.layers['boxBlockDiv'+ iCounter].visibility = 'hide';
				boxPosition(iCounter);
				iCounter++;
			}
		}
	}
	else {
		var aImgElements = document.getElementsByTagName('IMG');
		var iCounter = 0;
		for (var i = 0; i < aImgElements.length; i++) {
			if (aImgElements[i].id && aImgElements[i].id.indexOf('boxButtonImg') > -1) {
				document.getElementById('boxBlockDiv'+ iCounter).style.visibility = 'hidden';
				boxPosition(iCounter);
				iCounter++;
			}
		}
	}
}

function boxPosition(i) {
	if (Nav4) {
		var oElement = document.images['boxButtonImg'+ i];
		var iLeft = oElement.x;
		var iTop = oElement.y;
		var iHeight = oElement.height;
		oElement = document.layers['boxBlockDiv'+ i];
		oElement.left = iLeft;
		oElement.top = iTop;
	}
	else {
		var oElement = document.getElementById('boxButtonImg'+ i);
		var iLeft = 0;
		var iTop = 0;
		while (oElement != null) {
			if (oElement.tagName && (oElement.tagName == 'IMG' || oElement.tagName == 'TD' || oElement.tagName == 'TABLE' || oElement.tagName == 'DIV')) {
				iLeft += oElement.offsetLeft;
				iTop += oElement.offsetTop;
			}
			if (Exp4)
				oElement = oElement.parentElement;
			else
				oElement = oElement.parentNode;
		}
		oElement = document.getElementById('boxBlockDiv'+ i);
		oElement.style.left = iLeft;
		oElement.style.top = iTop + 17;
	}
}

function boxToggle(i) {
	if (Nav4) {
		var oElement = document.layers['boxBlockDiv'+ i];
		if (oElement.visibility == 'hide')
			oElement.visibility = 'show';
		else
			oElement.visibility = 'hide';
	}
	else {
		var oElement = document.getElementById('boxBlockDiv'+ i);
		if (oElement.style.visibility == 'hidden')
			oElement.style.visibility = 'visible';
		else
			oElement.style.visibility = 'hidden';
	}
}

function boxClose(i) {
	if (Nav4) {
		var oElement = document.layers['boxBlockDiv'+ i];
		oElement.visibility = 'hide';
	}
	else {
		var oElement = document.getElementById('boxBlockDiv'+ i);
		oElement.style.visibility = 'hidden';
	}
}

