var veldnaam = '';

function setSelectDisplay(what) {
	/** alle selects verstoppen **/
	var select_arr = document.getElementsByTagName("select");
	for (var i = 0; i < select_arr.length; i++) {
		select_arr[i].style.display = what;
	}
}

function doDropDown(options,veldnaam) {
	filldropdown(options.veldnaam);
}

function setDefaultValue(callFunc, value, veldnaam) {
	eval ("var waarde = " + callFunc + "('" + value + "');");
	waarde = waarde.split("|");
	document.getElementById(veldnaam + "txt").value = waarde[1];	
}

function filldropdown(callFunc, value,veldnaam, postfunc) {
//	clearInterval(dropDownDelay);
//	dropDownDelay = setInterval("filldropdown('"+callFunc+"', '"+value+"', '"+veldnaam+"');", 1000);
//	var dropDownDelay = setTimeout("filldropdown('"+callFunc+"', '"+value+"', '"+veldnaam+"');",1000);

	eval ("var options = " + callFunc + "('" + value + "');");
	var iKeyCode = event.keyCode;
//	if (iKeyCode < 32 || (iKeyCode >= 33 && iKeyCode <= 46) || (iKeyCode >= 112 && iKeyCode <= 123)) {
	if (1 == 2) {
		return;
	} else {
		var veldnaam = veldnaam;
		if (document.getElementById('veldnaam')) {
			document.getElementById('veldnaam').value = veldnaam;
			document.getElementById('postfunc').value = postfunc;
		} else {
			var memory = document.createElement('input');
			memory.type = 'hidden';
			memory.id = 'veldnaam';
			memory.value = veldnaam;
			document.appendChild(memory);
			
			var mempostfunc = document.createElement('input');
			mempostfunc.type = 'hidden';
			mempostfunc.id = 'postfunc';
			mempostfunc.value = postfunc;
			document.appendChild(mempostfunc);
		}
		var arr_woords=options.split("#");
		var woordcount=0;

			d = document.getElementById("selecter"+veldnaam);
			if(document.getElementById("superdiv"+veldnaam)){
//				d = document.getElementById("selecter"+veldnaam);
				d_nested = document.getElementById("superdiv"+veldnaam);
				throwaway_node = d.removeChild(d_nested);
			}
	
		if (String(arr_woords[0]) != '') {
			setSelectDisplay('none');
			//autocomplete(arr_woords[0],veldnaam);
		
			var superdiv = document.createElement('div');
			superdiv.id = "superdiv"+veldnaam;
			
			while (woordcount < arr_woords.length){
				var newdiv = document.createElement('div');
				var curword = arr_woords[woordcount];
				curword = curword.split("|");
				var newtext = document.createTextNode(curword[1]);
				newdiv.className="optie"
				newdiv.appendChild(newtext);
				newdiv.onmouseover = divover;
				newdiv.onmouseout = divout;
				newdiv.onclick = divclick;
				newdiv.veldnaam = veldnaam;
				newdiv.id = arr_woords[woordcount];
				superdiv.appendChild(newdiv);
				woordcount++
			}
			document.getElementById('selecter'+veldnaam).appendChild(superdiv);
			
			if (options == ''){
				document.getElementById('selecter'+veldnaam).style.visibility = "hidden";
			}
			else{
				document.getElementById('selecter'+veldnaam).style.visibility = "visible";
			}
		} else {
			document.getElementById(veldnaam).value = '';
		}
	}
}

function hideresults()
{
	setSelectDisplay('');
	var veldnaam = document.getElementById('veldnaam').value;
	var postfunc = document.getElementById('postfunc').value;
	var txt = document.getElementById(veldnaam + 'txt');
	if (document.getElementById(veldnaam).value == "") {
		if (document.getElementById(veldnaam + '_anders') && txt.value != "") {
			var anders =document.getElementById(veldnaam + '_anders');
			anders.value = txt.value;
			if (anders.type != "hidden") {
				anders.focus();
				txt.value = "";
			}
		} else txt.value = "";
	}
	document.getElementById('selecter'+veldnaam).style.visibility='hidden';
	if (postfunc != "undefined") eval(postfunc + "();");	
}

function checkId(veldnaam) {
	var txt = document.getElementById(veldnaam + 'txt');
	if (document.getElementById(veldnaam).value == "") {
		if (document.getElementById(veldnaam + '_anders') && txt.value != "") {
			var anders =document.getElementById(veldnaam + '_anders');
			anders.value = txt.value;
			if (anders.type != "hidden" && anders.style.display != "none") {
				anders.focus();
				txt.value = "";
			}
		} else txt.value = "";
	}

}

// Alternatieve divclick
function altClick(veldnaam) {
	checkId(veldnaam); 
	setSelectDisplay(''); 
	document.getElementById('selecter'+veldnaam).style.visibility='hidden';
}

function divover() {
	this.style.backgroundColor = "#3C6C6C";
	this.style.color = "#FFFFFF";
}

function divout() {
	this.style.backgroundColor = "#EAF4F4";
	this.style.color = "#000000";
}

function divclick(obj) {
	var veldnaam = document.getElementById('veldnaam').value;
	this.style.backgroundColor = "#3C6C6C";
	this.style.color = "#FFFFFF";
	var waarde = this.id;
	if (waarde != "") {
		waarde = waarde.split("|");
		document.getElementById(veldnaam + 'txt').value=waarde[1];
		document.getElementById(veldnaam).value=waarde[0];
	}
	hideresults();
}

function autocomplete(dropdownval,veldnaam)
{
	var idField = document.getElementById(veldnaam);
	var textField = document.getElementById(veldnaam+"txt");
	var dropdownval = dropdownval.split("|");
	var id = dropdownval[0];
	var val = dropdownval[1];

	if (textField.createTextRange && textField.value != "") {
		var rl = textField.createTextRange();
		var oldVal = rl.text;
		if (val != textField.value) {
			textField.value = val;
			var rNew = textField.createTextRange();
			rNew.moveStart('character',oldVal.length);
			rNew.select();
		}
		idField.value = id;
	} else idField.value = "";
}
