// JavaScript Document

function getListValue(lst)
{
	if (lst.options.length == 0 || lst.selectedIndex < 0)
		return "";
		
	return lst.options[lst.selectedIndex].innerHTML;
}

function fillList(listname, listinfo)
{
	listname.innerHTML = "";
	if (listinfo == "")
		return;
		
	listinfo = listinfo.split(";");
	for (i = 0; i < listinfo.length; i++)
		addMenuItem(listname, listinfo[i]);
}

/******************************************************************/
//MenuItem
function MenuItem(iname, ochar, cchar)
{
	this.itemName = iname;
	this.openChar = ochar;
	this.closeChar = cchar;
	this.isOpen = false;
	
	this.itemList = new Array();

	this.toggle = toggle;
}

function toggle(menu, element)
{
	if (!this.isOpen)
	{
		menu.style.display = "block";
		menu.style.marginLeft = "25px";
		idx = element.innerHTML.indexOf(this.openChar);
		element.innerHTML = element.innerHTML.substring(0, idx) + this.closeChar + element.innerHTML.substring(idx + 1);
		this.isOpen = true;
	}
	else
	{
		menu.style.display = "none";
		idx = element.innerHTML.indexOf(this.closeChar);
		element.innerHTML = element.innerHTML.substring(0, idx) + this.openChar + element.innerHTML.substring(idx + 1);
		this.isOpen = false;
	}
}
/******************************************************************/
function addMenuItem(menu, itemName)
{
	el = document.createElement("option");
	el.text = itemName;
	try {
		menu.add(el, null);
		return el;
	} catch (e)
	{	menu.add(el);
		return el;
	}
}

function emptyMenu(menu)
{
	for (var i = menu.length - 1; i >= 0; i--)
		menu.remove(i);
}

function removeAllChildren(el)
{
	while(el.lastChild)
		el.removeChild(el.lastChild);
}

function toggleMenu(menu, element)
{
	if (menu.style.display == "none")
	{
		menu.style.display = "block";
		menu.style.marginLeft = "25px";
		idx = element.innerHTML.indexOf("+");
		element.innerHTML = element.innerHTML.substring(0, idx) + "-" + element.innerHTML.substring(idx + 1);
	}
	else
	{
		menu.style.display = "none";
		idx = element.innerHTML.indexOf("-");
		element.innerHTML = element.innerHTML.substring(0, idx) + "+" + element.innerHTML.substring(idx + 1);
	}
}

function createToolTip(e, message, element)
{
	if (element.innerHTML.length > 0)
		return;
		
	element.style.textAlign = "left";
	element.style.visibility = "visible";
	element.style.position = "absolute";
	element.innerHTML = message;
	element.style.left = e.clientX;
	element.style.top = e.clientY;
}

function killToolTip(element)
{
	element.innerHTML = "";
	element.style.visibility = "hidden";
}

function listContains(lst, itm)
{
	for (i = 0; i < lst.options.length; i++)
		if (lst.options[i].innerHTML == itm)
			return true;
			
	return false;
}



