/*
 *  Menus and Navigation
 */
var currentlyHovering_Main = false;

function getStyle( name, forceIEBehavior )
{
    var myObj = getObj( name, forceIEBehavior );
    return myObj == null ? null : myObj.style;
}

function showElement( name )
{
	if ( document.getElementById )
		getStyle( name ).visibility="visible"
	else if ( document.layers )
		getObj( name ).visibility = "show";
}

function hideElement( name )
{
	if ( document.getElementById )
		getStyle( name ).visibility="hidden";
	else if ( document.layers )
		getObj( name ).visibility = "hide";
}



function menuElementStatus( name )
{
	if ( document.getElementById ){
		if(getStyle( name ).visibility == "visible")
			return true
		else
			return false
	}else if ( document.layers ){
		if(getObj( name ).visibility == "show")
			return true
		else
			return false
	}
}


function getObj( name, forceIEBehavior )
{
    var newObj;
    if ( typeof name == "string" ) {
        if (document.getElementById) {
            newObj = document.getElementById(name);
            if ( newObj == null && forceIEBehavior != null & forceIEBehavior ) {
                var newObjArray = document.getElementsByName( name );
                if ( newObjArray != null && newObjArray.length > 0 ) 
                    newObj = newObjArray[ 0 ];
            }else{
                var newObjArray = document.getElementsByName( name );
                if ( newObjArray != null && newObjArray.length > 0 ) 
                    newObj = newObjArray[ 0 ];
            }
        }
        else if (document.all) {
            newObj = document.all[name];
        }
        else if (document.layers) {
            newObj = document.layers[name];
        }
    }
    else
        newObj = name;
    return newObj;
}


function doMenu(pId,pEvt) {
    currentlyHovering = true;

    var pEvent= (window.event) ? window.event : pEvt;
    
    if (window.event)event.cancelBubble=true;
	else if (pEvent.stopPropagation)pEvent.stopPropagation()

    setTimeout('doPopulateCheck('+pId+','+(pEvent.type=="click")+','+(pEvent.type=="mouseover")+')',500);
}

function doPopulateCheck(pId,pblnClickStatus,pblnmouseoverStatus) {

    if (!currentlyHovering_Main){
        doPopulateMenu(pId,pblnClickStatus,pblnmouseoverStatus);
    }
}

function doHideMenus(){
	var objSubMenu;
	for (i=0;i<9;i++) {
		objSubMenu ='menuItem' + i.toString();
		if(getObj(objSubMenu)){
			if (menuElementStatus( objSubMenu ) ){
				hideElement( objSubMenu );
				var navElement = getObj('navItem' + i.toString());
				if (navElement != null) {
						if (navElement.className.indexOf("On") != -1) 
						navElement.className = navElement.className.substring(0, (navElement.className.length-2));
				}
				return;
			}
		}
	}
}

function doPopulateMenu(pId,pblnClickStatus,pblnmouseoverStatus){
        doHideMenus();
        var objMenu = getObj('navItem' + pId);
        var strSubMenu = 'menuItem' + pId;
    
        if (pblnClickStatus==true && (!menuElementStatus( strSubMenu )) || pblnmouseoverStatus==true){
            objMenu.className = objMenu.className + "On";
            showElement( strSubMenu );
        }	
        else if (pblnClickStatus==true){
            if (objMenu.className.indexOf("On") != -1) {
                    objMenu.className = objMenu.className.substring(0, (objMenu.className.length-2));
            }
            hideElement( strSubMenu );
        }
}

function doHideSubMenu(pId){
	var objMId = getObj('navItem' + pId)
	var objSMId = getObj('menuItem' + pId)
	
	if (!currentlyHovering) {
		if (typeof objSMId !="undefined" && objSMId.style.visibility =="visible"){
			if (objMId.className.indexOf("On") != -1) {
				objMId.className = objMId.className.substring(0, (objMId.className.length-2));
				hideElement( 'menuItem' + pId );
				strVal = getObj('selectedMenu').value;
				if(getObj('navItem' +strVal)){
					objNavSelected = getObj('navItem' +strVal);
					if(objNavSelected.className != objNavSelected.clasName+"On") {
						objNavSelected.className = objNavSelected.className + "On";					
					}
					showElement( 'menuItem'+strVal);
					currentlyHovering = true;
				}
			}
		}
	}
}
/*---------------Start Used for Menu Generation -----------------*/
function doHideMenu(pId) {
	//menu disappear speed onMouseout (in miliseconds)
    currentlyHovering=false;
    setTimeout("doHideCheck("+pId+")",500);
}

function doHideCheck(pId) {
    if (!currentlyHovering){
    	setTimeout("doHideSubMenu("+pId+")",1000);
    }
}

function doPersistHover(pId) {
	currentlyHovering = true;
    currentlyHovering_Main = true;
}

function doNotPersistHover(pId) {
    currentlyHovering_Main = false;
	 //menu disappear speed onMouseout (in miliseconds)
    if (currentlyHovering){
        currentlyHovering = false;
        setTimeout("doHideSubMenu("+pId+")",1500);
    }
}

function setMenu(pId){
	getObj('selectedMenu').value=pId;
}
/*---------------End Used for Menu Generation -----------------*/


function ShowLangMenu() {

	if (menuElementStatus("langpopup")==false) {
		showElement("langpopup");
	} else
	{   hideElement("langpopup");
	}

}

function statusNavClick(id, numTabs, isKF) {
	var elStatusNavPrefix = "statusNav";
	var elStatusBodyPrefix = "statusBody";
	if (isKF != null && isKF == true) {
		elStatusNavPrefix += "KF";
	}
	
	var sNavElement = getObj("statusNav" + id);
	if (sNavElement.className != elStatusNavPrefix + "On") {
		for (var i=0; i<numTabs; i++) {
			getObj("statusNav" + i).className = elStatusNavPrefix + "Off";
			getObj("statusBody" + i).style.display = "none";  // hide body under inactive tabs
		}
		if (id < numTabs-1) {
			sNavElement.className = elStatusNavPrefix + "On";  // active tab
			getObj("statusNav" + (id+1)).className = elStatusNavPrefix + "OffAfterOn";  // set tab left of active to special style
		} else {
			// last element
			sNavElement.className = elStatusNavPrefix + "OnLast";
		}
		getObj(elStatusBodyPrefix + id).style.display = "block";  // show body under active tab
	}
}