//flex-menu
var flaxImg = new Array();
function flaxInit()
{
	if (document.images)
	{
	
	}
}


var AgntUsr=navigator.userAgent.toLowerCase();
var DomYes=document.getElementById?1:0;
var NavYes=AgntUsr.indexOf('mozilla')!=-1&&AgntUsr.indexOf('compatible')==-1?1:0;
var ExpYes=AgntUsr.indexOf('msie')!=-1?1:0;
var Opr=AgntUsr.indexOf('opera')!=-1?1:0;
var Opr6orless=window.opera && navigator.userAgent.search(/opera.[1-6]/i)!=-1 //DynamicDrive.com added code
var DomNav=DomYes&&NavYes?1:0;
var DomExp=DomYes&&ExpYes?1:0;
var Nav4=NavYes&&!DomYes&&document.layers?1:0;
var Exp4=ExpYes&&!DomYes&&document.all?1:0;

var menuItemCount = 16;

var selectedRow;
var selectedRowType;
var winW;
var winH;

function applyFilter(filterObj, filterFunction)
{
	if (filterObj && filterObj.style)
	{
		if (filterFunction == null)
		{
			filterFunction = "blendTrans(duration=0.3)";
			//filterFunction = "revealTrans(duration=0.3, transition=12)";
			//filterFunction = "progid:DXImageTransform.Microsoft.Pixelate(duration=0.5, Percent=20)";
		}
		filterObj.style.filter = filterFunction;
		if (filterObj.filters && filterObj.filters.length && filterObj.filters[0])
		{
			filterObj.filters[0].Apply();
			filterObj.filters[0].Play();
		}
	}
}


function selectRow(obj, rowType)
{
	//rowType 0-top, 1-middle, 2-bottom
	if (selectedRow == obj) return;
	if (selectedRow != null) 
	{
		//selection without unselection
		//alert(selectedRow);
		//normal row
		/*selectedRow.style["backgroundColor"] = "#627BB4";
		var selectedA = selectedRow.getElementsByTagName("A");
		if (selectedA != null) selectedA[0].className = "submenuLink";*/
		unselectRow(selectedRow, selectedRowType);
	}
	selectedRow = obj;
	selectedRowType = rowType;
	
	//selected row style
	//obj.style["backgroundColor"] = "#C4CFE9";
	if (obj.cells && obj.cells[0])
	{
		//the 1st cell

		if (obj.cells[0].style)
		{
			//applyFilter(obj.cells[0]);
			//obj.cells[0].style["backgroundColor"] = "#FFFFFF";
			obj.cells[0].style["backgroundColor"] = (selectedRowType == 2 ? "#d9ecff" : "#595096");
		}
	}
	var a = obj.getElementsByTagName("A");
	if (a != null && a[0] != null) a[0].className = "flaxMenuItemActive";
}

function unselectRow(obj, rowType)
{
	if (obj != null)
	{
		if (obj.cells && obj.cells[0])
		{
			//the 1st cell

			if (obj.cells[0].style)
			{
				//applyFilter(obj.cells[0]);
				obj.cells[0].style["backgroundColor"] = (selectedRowType == 2 ? "#2755ad" : "#d9ecff");
			}
		}
		
		var selectedA = obj.getElementsByTagName("A");
		if (selectedA != null && selectedA[0] != null) selectedA[0].className = "flaxMenuItem";
		selectedRow = null;
		selectedRowType = null;
	}
}

function cellClick(cell)
{
	if (cell != null)
	{
		var a = cell.getElementsByTagName("A");
		if (a != null && a[0] != null) a[0].click();
	}
}

function calculateMenuPos1()
{
	flaxInit();
	for (var x = 1; x <= menuItemCount; x++)
	{
		var m = document.getElementById("menu" + x);		
		if (m != null)
		{
			obj = m;
			StartTop = obj.offsetHeight + 2;
			StartLeft = -3;
			switch(x)
			{
				case 1:
					StartLeft -= 20;
					break;
				case 6:
					StartLeft += 3;
					StartTop -= 1;
					break;
				case 7:
					StartTop -= 1;
					break;
			}
			if(DomYes)
			{
				while (obj)
				{
					StartTop += obj.offsetTop;
					StartLeft += obj.offsetLeft;
					obj = obj.offsetParent;
				}
			}
			else
			{
				StartTop += Nav4 ? obj.pageY : obj.offsetTop;
				StartLeft += Nav4 ? obj.pageX : obj.offsetLeft;
			}
			
			var menuDiv = document.getElementById("menu" + x + "Div");
			if (menuDiv != null && menuDiv.style != null)
			{
				menuDiv.style.left = StartLeft;
				menuDiv.style.top = StartTop;
				
				//alert(x + ':' + menuDiv.style.left + '-' + menuDiv.style.top);
				//window.setTimeout('openMenu(\'' + x + '\');', 50*x);
				//window.setTimeout('hideMenu(\'' + x + '\');', 50*x + 50);
				hideMenu(x);
			}
			
		}
	}
}

function openMenu(id)
{
	if (id != 7 && id != 8 && id != 9 && id != 10 && id != 11 && id != 12 && id != 13 && id != 14 && id != 15 && id != 16) hideMenu();
	showMenu();
	if (id == null) return;
	
	var m = document.getElementById("menu" + id);
	if (m && m.style) //td with menu
	{
		//highlights a cell
		//m.style["backgroundColor"] = "#EAEFFF";
	}
	

	// get browser size
	var browser_size = get_browser_size();

	var menuDiv = document.getElementById("menu" + id + "Div");
	if (menuDiv != null && menuDiv.style != null)
	{
		if (id != 7 && id != 8 && id != 9 && id != 10 && id != 11 && id != 12 && id != 13 && id != 14 && id != 15 && id != 16) {
			menuDiv.style.top  = (gT(m) + 20) + 'px';
			menuDiv.style.left = (gL(m) - 0) + 'px';
		} else {
			menuDiv.style.top  = (gT(m)) + 'px';
			menuDiv.style.left = (gL(m) + m.offsetWidth + 2) + 'px';

			// check if menu overlaps
			if ((gL(m) + m.offsetWidth + 2) + menuDiv.offsetWidth > browser_size[0]) {
				// turn it to left side
				menuDiv.style.left = (gL(m) - menuDiv.offsetWidth - 2) + 'px';
			}


//			st = '';
//			for (a in m) {
//				st = st + a + " ";
//			}
			//alert(st);
		}
		menuDiv.style.visibility = "visible";
		menuDiv.onmouseout = closeMenu;
		menuDiv.onmouseover = showMenu;
	}
}

function showMenu()
{
	if (window.closeMenuTimer != null) window.clearTimeout(closeMenuTimer);
}

function closeMenu()
{
	if (window.hideDelay == null) hideDelay = 300;
	if (window.closeMenuTimer != null) window.clearTimeout(closeMenuTimer);
	closeMenuTimer = window.setTimeout("hideMenu()", hideDelay);
}

function hideMenu(id)
{
	if (id == null)
	{
		//hides all menus
		for (var x = 1; x <= menuItemCount; x++)
			hideMenu(x);
	}
	else
	{
		//removes highlight
		var m = document.getElementById("menu" + id);
		if (m && m.style) //td with menu
		{
			//disables highlighting
			//m.style["backgroundColor"] = "#D0D8F4";
		}
		
		//hides a menu by it id
		var menuDiv = document.getElementById("menu" + id + "Div");
		if (menuDiv && menuDiv.style)
		{
			/*if (menuDiv.style.visibility != "hidden")
				applyFilter(menuDiv.parentElement, "revealTrans(duration=3, transition=4)");*/
			menuDiv.style.visibility = "hidden";
		}
	}
}


function get_browser_size() {
	if (parseInt(navigator.appVersion)>3) {
		if (navigator.appName=="Netscape") {
			winW = window.innerWidth-16;
			winH = window.innerHeight-16;
		}
		if (navigator.appName.indexOf("Microsoft")!=-1) {
			winW = document.body.offsetWidth-20;
			winH = document.body.offsetHeight-20;
		}
	}

	return(new Array(winW, winH));
}
