var browser = {isIE: /msie/i.test(navigator.userAgent), isFF: /firefox/i.test(navigator.userAgent), isOpera: /opera/i.test(navigator.userAgent)};

function $() {
	var elements = new Array();

	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);

		if (arguments.length == 1)
			return element;

		elements.push(element);
	}

	return elements;
}


var menuTimer, menuTimerElem;

window.onload = init;

function init()
{
	initObjs();
	updateOLs(document, "");
}

function initObjs()
{

}

function show(elem)
{
	if(menuTimerElem && (elem != menuTimerElem))
		menuTimerElem.style.visibility = "hidden";

	menuTimerElem = elem;
	clearTimeout(menuTimer);

	elem.style.visibility = "visible";
}

function hide(elem)
{
	menuTimerElem = elem;
	menuTimer = setTimeout("setVisible(menuTimerElem, \"hidden\")", 1000);
}

function updateOLs(html, prefix)
{
	var OLs = html.getElementsByTagName("OL");
	var flag = false;
	for (var j = 0; j < OLs.length; j++) {
		flag = false;
		var parent = OLs[j].parentNode;
		while (parent != html && parent != null) {
			if (parent.tagName == "UL") {
				flag = true;
				break;
			}

			for (var i = 0; i < OLs.length; i++) {
				if (parent == OLs[i]) {
					flag = true;
					break;
				}
			}

			parent = parent.parentNode;
		}
		if (flag)
			continue;
		updateLists(OLs[j], prefix);
	}
}

function updateLists(element, prefix)
{
	element.style.listStyle = 'none inside';
	if(prefix == "" && browser.isIE)
	{
		/*element.style.marginLeft = "-16px";
		element.style.paddingLeft = "16px";*/
		element.style.textIndent = "0px";
	}

	var oM = element.childNodes.length;
	var k = 1;

	for (var i = 0; i < oM; i++ ) {
		var oLI = element.childNodes[i];
		if (oLI.nodeType == 3)
			continue;
		oLI.innerHTML = (prefix == "") ? ("<b class=\"num\">" + k + ".</b> " + oLI.innerHTML) : ("<span class=\"num\">" + prefix + k + ".</span> " + oLI.innerHTML);

		updateOLs(oLI, prefix + k + ". ");
		k++;
	}
}

function getOffsetLeft(el)
{
	var parentEl = el.parentNode;

	var x = 0;

	var mx = 0;

	for(var i = 0; i < parentEl.getElementsByTagName("td").length; i ++)
	{
		if(parentEl.getElementsByTagName("td")[i] == el)
		{
			mx = (i == 1) ? parentEl.getElementsByTagName("td")[i - 1].clientWidth : Math.floor(parentEl.getElementsByTagName("td")[i - 1].clientWidth / 2) + 1;

			break;
		}
		else
			x += parentEl.getElementsByTagName("td")[i].clientWidth;
	}

	return (x - mx);
}

function setLeftMargin(el, toElem)
{
	var marginLeft = getOffsetLeft(el);

	toElem.style.marginLeft = marginLeft + "px";
}

function setVisible(el, vis)
{
	el.style.visibility = vis;
}

function changeClass(id, newClass)
{
	$(id).className = newClass;
}


function ishPopUp (url,name,width, height) {
    var new_width = width + 20;
    var new_height = height + 20;
    PopUpWindow = window.open(url,name,'titlebar=no,toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=no,scrollbars=no,width=' + new_width + ' ,height=' + new_height);
    PopUpWindow.focus();
}





