var imgPath 	= "/images/"
var flagMenuC 	= '';
var menuSel 	= '';
var timerId 	= null;


var repositioned= false;
DOM			= (document.getElementById) ? true : false;
NS4			= (document.layers) ? true : false;
NS6			= ((navigator.appName == "Netscape") && (parseFloat(navigator.appVersion) >=5 ))
NS4old		= (NS4 && (parseFloat(navigator.appVersion) < 4.02));
IE			= (document.all) ? true : false;
IE4			= IE && !DOM;
Mac			= (navigator.appVersion.indexOf("Mac") != -1);
Unix		= (navigator.appVersion.indexOf("X11") != -1);
IE4M		= IE4 && Mac;
Opera		= (navigator.userAgent.indexOf("Opera")!=-1);
Konqueror	= (navigator.userAgent.indexOf("Konqueror")!=-1);


function initMenuSel(mId){
	if (mId != "" && mId != null ){
		 var linkId = '',objLink = null,objImg= null;
		if (mId.length > 2){
			menuSel = mId;
			var prefixM = mId.substr(0,2).toUpperCase();
			if (prefixM == 'Menu'){
			    var imgId = 'img' + mId;
			    linkId = 'lk' + mId;
			    if (document.images){
					objImg = document.images[imgId];
					objImg.src = imgPath  + "fleche.gif";
				}
				if (document.getElementById){
					if (document.getElementById(linkId)){
						objLink = document.getElementById(linkId);
						objLink.style.textDecoration = "underline";
					}
				}
			}
		}
	}
}


function setFlagM(mId){
    if (mId!=''){
        if (timerId)
            window.clearTimeout(timerId);
        timerId = window.setTimeout('closeMif2(\'' + mId + '\')',200);
        
    }
    flagMenuC = mId;    
}


function showM(mId,topAdd,leftAdd){
		
   closeAllMenus();
	var divSM ;	
    if (timerId)
          window.clearTimeout(timerId);

	if (subMenuExist(mId)){
		
		var mX = findXY('bt' + mId,'x');
		var mY = findXY('bt' + mId,'y');
		
		var pxLeft = mX + leftAdd;
		var pxTop = mY + topAdd;
		
		if (document.getElementById){
    		divSM = document.getElementById(mId);
    		divSM.style.top = pxTop + 'px';
    		divSM.style.left = pxLeft + 'px' ;
    		divSM.style.visibility = "visible";
		}
		else if (document.all) {
			divSM = document.all[mId];
			divSM.style.pixelTop=pxTop;
    		divSM.style.pixelLeft=pxLeft;
			divSM.style.visibility = "visible";
		}
		else if (document.layers) {
		    
			divSM = document.layers[mId];
			divSM.top = pxTop;
			divSM.left = pxLeft;
			divSM.visibility = "show";
		}
    }
}


function closeM(mId){ 
    if (mId == null || mId==""){
		 closeAllMenus()
    } 
    else {
        if (document.getElementById){
			if (document.getElementById(mId))
				document.getElementById(mId).style.visibility = "hidden";
        }
        else if (document.all){
			if (document.all[mId])
				document.all[mId].style.visibility = "hidden";
        }
        else if (document.layers){
			if (document.layers[mId])
				document.layers[mId].visibility = "hide";
        }
    }
}


function closeAllMenus(){
  
	if (document.getElementById){
		for (var i=0;i<menuIds.length;i++){
			if (document.getElementById(menuIds[i]))
				document.getElementById(menuIds[i]).style.visibility = "hidden";
            }
	}	
    else if (document.all)   {
		for (var i=0;i<menuIds.length;i++){
			if (document.all[menuIds[i]])
				document.all[menuIds[i]].style.visibility = "hidden";
            }
            
	}
	else if (document.layers){
		for (var i=0;i<menuIds.length;i++){
			if (document.layers[menuIds[i]])
				document.layers[menuIds[i]].style.visibility = "hidden";
            }
    }
}


function closeMif(mId){
	if (subMenuExist(mId)){
		if (timerId)
			window.clearTimeout(timerId);
		window.setTimeout('closeMif2(\'' + mId + '\')',200); 
	}
}


function closeMif2(mId){
    if (flagMenuC == mId) 
       timerId = window.setTimeout('closeMif2(\'' + mId + '\')',200);
    else {
        closeM(mId);
        if (timerId)
            window.clearTimeout(timerId);
    }
}


function subMenuExist(mId){
	var mExist = false; 
	if (document.getElementById){
		if (document.getElementById(mId))
				mExist = true;
    }
    else if (document.all){
		if (document.all[mId])
			mExist = true;
    }
    else if (document.layers){
		if (document.layers[mId])
			mExist = true;
    }
    
    return mExist;
}


function findXY(elementid,xory) {	
    var thePlacer = DOM ? document.getElementById(elementid) :
                    IE ? document.all(elementid) : document.images[elementid];
    if(thePlacer!=null)
    {
		retVal=getReal(xory,thePlacer);
		//alert('element id: ' + elementid + ' - retVal ' + xory ':' + retVal)
		return retVal;
	}	
}


function getReal(xy,el){
	var lastOffset = 0
	
    if((IE)||(DOM)){
       Pos=(xy=="x")?el.offsetLeft:el.offsetTop;
       if ( (IE)&&(!Mac)&&(el.tagName)&&
           (el.tagName.toUpperCase()=="TABLE")&&
           (el.border)&&(el.border>0)) Pos++;
       tmpEl=el.offsetParent;      
       while(tmpEl!=null){
		  lastOffset = (xy=="x")?tmpEl.offsetLeft:tmpEl.offsetTop;
          Pos+=lastOffset;
	      
	      
          if ((IE)&&(!Mac)&&(tmpEl.tagName)&&
              (tmpEl.tagName.toUpperCase()=="TABLE")&&
              (tmpEl.border)&&(tmpEl.border>0)) Pos++;
          tmpEl=tmpEl.offsetParent;
          
       }
    }else{
       Pos=(xy=="x")?el.x:el.y;
    }


    return Pos;
}


function cMImg(imgId,flagState){
  
	if (imgId != "" && imgId != null ){
		if (imgId.length > 3){
			if (imgId.substr(1,4).toUpperCase() != menuSel.toUpperCase()){
				if (document.images){
					if (document.images[imgId]){
						var objImg = document.images[imgId];
						if (flagState==1){
							objImg.src = imgPath + "fleche.gif"
						}
						else if (flagState==2){
							objImg.src = imgPath + "spacer.gif"
						}
					}
				}
			}
		}
	}
}


function cMStylesG(objTD,lnkId,cssClass) {
    var ok = false;
    var objLink;
    if (document.getElementById){
		objLink = document.getElementById(lnkId);
		ok = true;
    }
    else if (document.all){
		objLink = document.all[lnkId];
		ok = true;
    }
	
	if (ok){
		objTD.className = cssClass;
	}
}



