﻿//--focus management-------------------------------------------

var ecancel;
var submitcount=0;
var jsopenwindow='';
var jswindowargs='width=800,scrollbars=1';
var properties='';
var allowsubmit=true;

function loadhandler() {
	var dialog=document.getElementById('dialog');
	var login=document.getElementById('login');
	if(dialog || login) {
		if(window.addEventListener){ // Mozilla, Netscape, Firefox
			window.addEventListener('keydown', dialoghandler, false);
			window.addEventListener('submit', submithandler, false);
		} else { // IE
			window.attachEvent('onkeydown', dialoghandler);
			window.attachEvent('onsubmit', submithandler);
		}
		safariformfix();
		var ref=document.getElementById('bodyh');
		var target=document.getElementById('maskbody');
		if(ref && target){
			target.style.height=ref.offsetHeight+"px";
			document.getElementById('mask').style.visibility='visible';
			document.getElementById('dialog').style.visibility='visible';
		}
	}
	focushandler();
}

function unloadhandler() {
	submitcount=0;
}

function safariformfix() {
	var useragent=navigator.userAgent;
	if (useragent) {
		if (useragent.indexOf('Safari') != -1) {
			var selecttag = document.getElementsByTagName('select');
			if (selecttag) {
				var selmembers = selecttag.length;
				for ( i=0;i<selmembers;i++ ) {
						selecttag[i].className = 'safariformfix';
				}
			}
			var checkboxtag = document.getElementsByTagName('input');
			if (checkboxtag) {
				var inputmembers = checkboxtag.length;
				for ( i=0;i<inputmembers;i++ ) {
					var currattribute=checkboxtag[i].getAttribute('type');
					if (currattribute == "checkbox" || currattribute == "radio") {checkboxtag[i].className = 'safariformfix'}
				}
			}
		}
	}
}

function focushandler() {
	if(document.getElementById('lookup')){document.getElementById('lookup').focus();return};
	if(document.getElementById('focus')){document.getElementById('focus').focus();return};
	if(document.getElementById('focusselect')){document.getElementById('focusselect').focus();document.getElementById('focusselect').select();return};
}

function submithandler() {
	submitcount=1;
}

function locksubmit() {
	allowsubmit=false;
}

function releasesubmit() {
	allowsubmit=true;
}


function dialoghandler(e) {
	var key;
	if (!e) var e = window.event;
	if (e.keyCode) key = e.keyCode;
	else if (e.which) key = e.which;
	if (key==13 && allowsubmit){
		var confirm=document.getElementById('confirm');
		if(confirm){
			confirm.className='hlie';
			submitdialog();
			return;
		}
	}
	if (key==27){
		document.getElementById('cancel').className='hlie';
		location.href="/?q="+ecancel;
		return false;		
	}
}

function passdialogparams(params) {
	properties='';
	for (var i=0;i<params.length;i++) {
		if (params[i].value) {
			if(params[i].type=='checkbox' && params[i].checked) {properties += escape(params[i].name) + '=' + escape(params[i].value) +'&'}
			if(params[i].type=='radio' && params[i].checked) {properties += escape(params[i].name) + '=' + escape(params[i].value) +'&'}
			if(params[i].type!='checkbox' && params[i].type!='radio' && params[i].type!='button') {properties += escape(params[i].name) + '=' + escape(params[i].value) +'&'}
		}
	}
	properties = properties.substring(0,properties.length-1);
}

function submitdialog() {
	if (submitcount=='0') {
		if(jsopenwindow) {
			passdialogparams(document.getElementById('dialogform').elements);
			jswindow=window.open(jsopenwindow+'&'+properties,'PDF',jswindowargs);
		}
		document.getElementById('dialogform').submit();
	}
}

function addibox() {
	var ibox2=document.getElementById('ibox2');
	var ibox3=document.getElementById('ibox3');
	var ibox4=document.getElementById('ibox4');
	var ibox5=document.getElementById('ibox5');
	var ibox6=document.getElementById('ibox6');
	var ibox7=document.getElementById('ibox7');
	var ibox8=document.getElementById('ibox8');
	var ibox9=document.getElementById('ibox9');
	var ibox10=document.getElementById('ibox10');
	if (ibox2.style.display=='none') {ibox2.style.display='block';return}
	if (ibox3.style.display=='none') {ibox3.style.display='block';return}
	if (ibox4.style.display=='none') {ibox4.style.display='block';return}
	if (ibox5.style.display=='none') {ibox5.style.display='block';return}
	if (ibox6.style.display=='none') {ibox6.style.display='block';return}
	if (ibox7.style.display=='none') {ibox7.style.display='block';return}
	if (ibox8.style.display=='none') {ibox8.style.display='block';return}
	if (ibox9.style.display=='none') {ibox9.style.display='block';return}
	if (ibox10.style.display=='none') {ibox10.style.display='block';return}
}

//--target distribution-------------------------------------------

function xg(target) {
	if (submitcount=='0') {
		if (target) {
			location.href="/?q="+target
		} else {
			location.href="/"
		}
	}
	submitcount=1;
	return false;
}

function xp(page) {
	var pagerbox=document.getElementById('pager');
	var pagebox=document.getElementById('page');
	if (pagerbox && pagebox) {
		pagebox.value=page;
		pagerbox.submit();
	}	
}

function xday(data) {
	var day=document.getElementById('day');
	var day_=document.getElementById('day_');
	var chooseday=document.getElementById('chooseday');
	if (day) {
		day.value=data;
		day_.innerHTML=data.substring(6,8)+'-'+data.substring(4,6)+'-'+data.substring(0,4);
		chooseday.className='hidden';
	}
	return;
}

function xd(data) {
	var day=document.getElementById('day');
	var day_=document.getElementById('day_');
	var chooseday=document.getElementById('chooseday');
	if (day) {
		day.value=data;
		day_.innerHTML='Betalingsdatum: '+data.substring(6,8)+'-'+data.substring(4,6)+'-'+data.substring(0,4);
		chooseday.className='hidden';
	}
	return;
}

function xshow(target) {
	var showbox=document.getElementById(target);
	if (showbox) {
		showbox.className='';
	}
}

function xshowhl(target) {
	var showbox=document.getElementById(target);
	if (showbox) {
		showbox.className='hl';
	}
}

function xhide(target) {
	var hidebox=document.getElementById(target);
	if (hidebox) {
		hidebox.className='hidden';
	}
}

function xtoggle(target) {
	var togglebox=document.getElementById(target);
	if (togglebox.className=='') {
		togglebox.className='hidden';
	} else {
		togglebox.className='';
	}
}

function xtogglebox(target,ctrl,pager) {
	var togglebox=document.getElementById(target);
	var ctrlbox=document.getElementById(ctrl);
	var pagerbox=document.getElementById(pager);
	if (togglebox && ctrlbox) {
		if (togglebox.className=='') {
			togglebox.className='hidden';
			ctrlbox.innerHTML='&#9654;';
			if (pagerbox) {pagerbox.className='hidden'};
		} else {
			togglebox.className='';
			ctrlbox.innerHTML='&#9660;';
			if (pagerbox) {pagerbox.className=''};
		}
		
	}
	return false;
}

function xtoggleshipbox(target,ctrl,shipactive) {
	var togglebox=document.getElementById(target);
	var ctrlbox=document.getElementById(ctrl);
	var activebox=document.getElementById(shipactive);
	if (togglebox && ctrlbox) {
		if (togglebox.className=='') {
			togglebox.className='hidden';
			ctrlbox.innerHTML='&#9654;';
			activebox.value='0';
		} else {
			togglebox.className='';
			ctrlbox.innerHTML='&#9660;';
			activebox.value='1';
		}
		
	}
	return false;
}

function xcheck(target) {
	var checkbox=document.getElementById(target);
	if (checkbox) {
		checkbox.checked=true;
	}
}

//function xg2(target,e) {
//	var e = e || window.event;
//	if (e.stopPropagation) {e.stopPropagation()} else {e.cancelBubble = true};
//	location.href="/?q="+target;
//	return;
//}

//--callback engine select constructor-------------------------------------------

var xmlhttp;
var cbbox;
var infobox;
var cbtarget;
var cblookup;
var cbcat;
var cbdata;
var cbmembers;

function callback(cat,minsize,target,key) {
	//empty();
	//document.getElementById("cbbox").innerHTML="Loading..."
	//KEYS: return=13 tab=? uparrow=38 downarrow=40 leftarrow=37 rightarrow=39 esc=27
	
      //switch(key) {
       //case 13: alert('return');break
       //case 27: alert('esc');break
       //case 37: alert('left');break
       //case 39: alert('right');break
       //case 38: alert('up');break
       //case 40: alert('down');break
      //}

	
	if (key!=13 && key!=9 && key!=27 && key!=37 && key!=38 && key!=39 && key!=40) {
		cbtarget=target;
		cbcat=cat;
		cblookup=document.getElementById("lookup").value;
		if (minsize>0) {
			if (cblookup.length>=minsize) {
				docallback();
			}
		}
	}
	return;
}

function docallback() {
	infobox=document.getElementById("infobox");
	infobox.innerHTML='&hellip;';
	if (window.XMLHttpRequest) {
		xmlhttp=new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	var url = "/?c=0";
	xmlhttp.open("POST",url,true);
	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xmlhttp.onreadystatechange=cbprocess;
	xmlhttp.send("cbc="+escape(cbcat)+"&cbq="+escape(cblookup)+"&cbt="+escape(cbtarget));
	//xmlhttp.send(null); //only use with GET method
	return;
}

function cbprocess() {
	if (xmlhttp.readyState == 4) {
		if (xmlhttp.status == 200) {
			infobox.innerHTML='';
			cbbox=document.getElementById('cbbox');
			cbbox.innerHTML=xmlhttp.responseText;
			cbdata=document.getElementById(cbtarget);
			
			if (cbdata) {
				cbmembers=cbdata.length;
				if (cbmembers>0) {
					if (cbmembers>15) {
						cbmembers=15;
					}
					if (cbmembers==1) {
						if (cbcat=='zip') {
							document.getElementById('cbcopytarget').value=cbdata.options[0].text;
							cbbox.innerHTML='';
							return;
						} else {
							cbmembers=2;
							cbdata.focus();
						}
					}
					cbdata.size=cbmembers;
					cbdata.selectedIndex=0;
					//cbbox.style.display='block';
				}
			}
		}
	}
	return;
}
