var CUSTOMCOMBO_HTML_BODY;
var SELECTEDCUSTOMCOMBO;
var CUSTOMCOMBO_ORG_CLASS;
var CUSTOMCOMBOOPTIONS_ORG_CLASS;
var CUSTOMCOMBOOPTION_ORG_CLASS;

function ShowComboOptions(e){
	var Elem;
	var ElemOpenend;
	var ElemOptions;
	
	if (!e) var e = window.event;
	
	if (e.target) Elem = e.target;
	else if (e.srcElement) Elem = e.srcElement;
	
	if (Elem.id == "")
	{
		Elem = Elem.parentNode;
	}
	
	if (SELECTEDCUSTOMCOMBO != null)
	{
		if (Elem.id != SELECTEDCUSTOMCOMBO)
		{
			ElemOptions = document.getElementById(SELECTEDCUSTOMCOMBO + "_Options");			
			ElemOptions.style.display = "none";
			
			ElemOpenend = document.getElementById(SELECTEDCUSTOMCOMBO);
			ElemOpenend.className = CUSTOMCOMBO_ORG_CLASS;
		}	
	}
	
	ElemOptions = document.getElementById(Elem.id + "_Options");
	
	
	if (ElemOptions.style.display == "block")
	{		
		Elem.className = CUSTOMCOMBO_ORG_CLASS;
		ElemOptions.style.display = "none"	;
	}
	else
	{
		CUSTOMCOMBO_ORG_CLASS = Elem.className;
		Elem.className = CUSTOMCOMBO_ORG_CLASS + "Openened";
		ElemOptions.style.display = "block";
	}
	
	SELECTEDCUSTOMCOMBO = Elem.id
}

function HideComboOptions(e)
{
	var Elem1;
	var Elem2;
	var ElemType1;
	var ElemType2;
	// e opvullen voor Microsoft IE
	if (!e) var e = window.event;
	
	if (e.target) Elem1 = e.target;
	else if (e.srcElement) Elem1 = e.srcElement;
			
	Elem2 = Elem1.parentNode;
	ElemType1 = Elem1.getAttribute("Type");
	ElemType2 = Elem2.getAttribute("Type");
	
	if ((ElemType1 != "CustomCombo") && (ElemType2 != "CustomCombo"))
	{
		if (SELECTEDCUSTOMCOMBO != null)
		{
			ElemOptions = document.getElementById(SELECTEDCUSTOMCOMBO + "_Options");			
			ElemOptions.style.display = "none";
			
			Elem = document.getElementById(SELECTEDCUSTOMCOMBO);
			Elem.className = CUSTOMCOMBO_ORG_CLASS;
		}
	}	
}

function HighLightComboOption(e)
{
	var Elem;
	
	if (!e) var e = window.event;
	
	if (e.target) Elem = e.target;
	else if (e.srcElement) Elem = e.srcElement;
		
	CUSTOMCOMBOOPTION_ORG_CLASS = Elem.className;
	Elem.className += "Over";
}

function UnHighLightComboOption(e)
{
	var Elem;
	
	if (!e) var e = window.event;
	
	if (e.target) Elem = e.target;
	else if (e.srcElement) Elem = e.srcElement;
		
	Elem.className = CUSTOMCOMBOOPTION_ORG_CLASS;
}

function SelectComboOption(e)
{
	var ElemOption;
	var ElemCombo;
	var ElemHidden;
	
	if (!e) var e = window.event;
	
	if (e.target) ElemOption = e.target;
	else if (e.srcElement) ElemOption = e.srcElement;
	
	ElemCombo = ElemOption.parentNode;
	ElemHidden = ElemOption.parentNode;
	
	ElemCombo = "" + ElemCombo.id	
	ElemHidden = "" + ElemHidden.id	
		
	ElemCombo = ElemCombo.replace("_Options", "")
	ElemCombo = document.getElementById(ElemCombo);	
	
	ElemHidden = ElemHidden.replace("_Options", "") + "_Hidden";		
	ElemHidden = document.getElementById(ElemHidden);	
	
	ElemCombo.firstChild.innerHTML = ElemOption.innerHTML;
	ElemHidden.value = ElemOption.getAttribute("Value");
		
	ElemCombo.className = CUSTOMCOMBO_ORG_CLASS;
	
	if (ElemOption.getAttribute("Action") != null)
	{
		eval(ElemOption.getAttribute("Action"));
	}
	
}

function LoadCustomCombos(ElementType)
{
	var Elems = document.getElementsByTagName(ElementType);	
	var ElemOptions;
	var Body = document.getElementsByTagName("body");	
	
	for (var i = 0; i < Body.length; i++)
	{
		Body[i].onclick = HideComboOptions;
	}
	
	for (var i = 0; i < Elems.length; i++)
	{
		if (Elems[i].getAttribute("Type") == "CustomCombo")
		{
				Elems[i].onclick = ShowComboOptions;
				Elems[i].onselectstart = function () { return false; }
  				Elems[i].onmousedown = function () { return false; }	
		}
		if (Elems[i].getAttribute("Type") == "CustomComboOption")
		{
				Elems[i].onclick = SelectComboOption;
				Elems[i].onmouseover = HighLightComboOption;
				Elems[i].onmouseout = UnHighLightComboOption;
		}
		
	}
	
}

window.onload = function() { LoadCustomCombos("div"); }
