var mastertabvar=new Object();
mastertabvar.baseopacity=0
mastertabvar.browserdetect=""

var subMenuMouseOutTimer;
var currentTab;

function showsubmenu(masterid, id){
	if (typeof subMenuMouseOutTimer!="undefined")
		clearTimeout(subMenuMouseOutTimer);
	if (typeof highlighting!="undefined")
	clearInterval(highlighting)
	submenuobject=document.getElementById(id)
	mastertabvar.browserdetect=submenuobject.filters? "ie" : typeof submenuobject.style.MozOpacity=="string"? "mozilla" : ""
	hidesubmenus(mastertabvar[masterid])
	//submenuobject.setAttribute("class","submenustyle");
	changeClass(submenuobject,"submenustyle");
	instantset(mastertabvar.baseopacity)
	highlighting=setInterval("gradualfade(submenuobject)",20);
}

function hidesubmenu(masterid, id) {
	
if (typeof highlighting!="undefined")
	clearInterval(highlighting)
submenuobject=document.getElementById(id)
mastertabvar.browserdetect=submenuobject.filters? "ie" : typeof submenuobject.style.MozOpacity=="string"? "mozilla" : "";
hidesubmenus(mastertabvar[masterid]);

}

function hidesubmenus(submenuarray){
	
for (var i=0; i<submenuarray.length; i++){
//document.getElementById(submenuarray[i]).setAttribute("class","submenustyle no-display");
if(document.getElementById(submenuarray[i]))
	changeClass(document.getElementById(submenuarray[i]),"submenustyle no-display");
}

}

function hideMainTabs(masterid){
	
	mainTabsArray = document.getElementById("maintab").childNodes;
	
	for (var i=0; i<mainTabsArray.length; i++)
	{
		if(mainTabsArray[i].nodeName.toLowerCase() == "li"){
			changeClass(mainTabsArray[i],"");
			children = mainTabsArray[i].childNodes;
			for(var j=0;j<children.length;j++)
			{
				if(children[j].nodeName.toLowerCase() == "a"){
					changeClass(children[j],"");
				}
			}
		}
	}
}

function instantset(degree){
if (mastertabvar.browserdetect=="mozilla")
submenuobject.style.MozOpacity=degree/100
else if (mastertabvar.browserdetect=="ie")
submenuobject.filters.alpha.opacity=degree
}


function gradualfade(cur2){
if (mastertabvar.browserdetect=="mozilla" && cur2.style.MozOpacity<1)
cur2.style.MozOpacity=Math.min(parseFloat(cur2.style.MozOpacity)+0.1, 0.99)
else if (mastertabvar.browserdetect=="ie" && cur2.filters.alpha.opacity<100)
cur2.filters.alpha.opacity+=10
else if (typeof highlighting!="undefined") //fading animation over
clearInterval(highlighting)
}

function findposX(obj)
{
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
}
function changeClass(obj,c)
{
	obj.setAttribute("class", c);
	obj.setAttribute("className", c);
	obj.className = c;
}


function initalizetab(tabid){
mastertabvar[tabid]=new Array()
var menuitems=document.getElementById(tabid).getElementsByTagName("li")
for (var i=0; i<menuitems.length; i++){
if (menuitems[i].getAttribute("rel")){
	menuleft = findposX(menuitems[i]) - 8;
document.getElementById(menuitems[i].getAttribute("rel")).style.left = menuleft +"px";
menuitems[i].setAttribute("rev", tabid) //associate this submenu with main tab
mastertabvar[tabid][mastertabvar[tabid].length]=menuitems[i].getAttribute("rel") //store ids of submenus of tab menu
if (menuitems[i].getAttribute("className")=="selected" || menuitems[i].getAttribute("class")=="selected")
	showsubmenu(tabid, menuitems[i].getAttribute("rel"))

menuitems[i].getElementsByTagName("a")[0].onmouseover=function(){
	showsubmenu(this.parentNode.getAttribute("rev"), this.parentNode.getAttribute("rel"));
	hideMainTabs(tabid);
	changeClass(this.parentNode,"hover");
	changeClass(this,"hover");
}
menuitems[i].getElementsByTagName("a")[0].onmouseout=function(){
	par = this.parentNode;
	currentTab = this;
	document.getElementById(par.getAttribute("rel")).onmouseover = function() {
		changeClass(par,"hover");
		changeClass(currentTab,"hover");
		if (typeof subMenuMouseOutTimer!="undefined")
		clearTimeout(subMenuMouseOutTimer);
	}
	document.getElementById(par.getAttribute("rel")).onmouseout = function() {
		subMenuMouseOutTimer = setTimeout ( 'changeClass(par,"");changeClass(currentTab,"");hidesubmenu(par.getAttribute("rev"), par.getAttribute("rel"))', 1000 );
	}
	subMenuMouseOutTimer = setTimeout ( 'changeClass(par,"");changeClass(currentTab,"");hidesubmenu(par.getAttribute("rev"), par.getAttribute("rel"))', 1000 );
}
}
}
}
