var objNavMenu = null;
var prevObjNavMenu = null;
var prevObjDropMenu = null;
var numDropMenu = 3;

var showMenu = false;

//STYLES
var isIE = (navigator.appName.indexOf("Microsoft Internet Explorer") >= 0);

	
function initDropMenu() {
	document.onclick = hideDropMenu;
	for (i = 1; i <= numDropMenu; i++) {
		menuName = 'dropMenu' + i;
		navName = 'navMenu' + i;
		objDropMenu = document.getElementById(menuName);
		objNavMenu = document.getElementById(navName);
		objDropMenu.style.visibility = 'hidden';
		objNavMenu.onmouseout = menuOut;
		objDropMenu.onmouseout = menuOut;
		objNavMenu.onmouseover = showDropMenu;
		objDropMenu.onmouseover = setShow;
	}
	objDropMenu = null;
	return;
}


function menuOut(e) {
	document.onclick = hideDropMenu;
	showMenu = false;
	setTimeout("hideDropMenu();", 3000);
	outObjNavMenu = document.getElementById(this.id);
	//if (outObjNavMenu != objNavMenu) {
	//}
}


function showDropMenu(e) {
	showMenu = true;
	menuName = 'drop' + this.id.substring(3, this.id.length);
	objDropMenu = document.getElementById(menuName);
	//if (prevObjDropMenu == objDropMenu) {
	//	hideDropMenu();
	//	return;
	//}
	if (prevObjDropMenu != null && prevObjDropMenu != objDropMenu) hideDropMenuForced();
	objNavMenu = document.getElementById(this.id);
	if (objDropMenu) {
		xPos = objNavMenu.offsetParent.offsetLeft + objNavMenu.offsetLeft -3;
		yPos = objNavMenu.offsetParent.offsetTop + objNavMenu.offsetParent.offsetHeight;
		if (isIE) yPos -= 10; 
		else;	
		objDropMenu.style.left = xPos + "px";
		objDropMenu.style.top = yPos + "px";
		objDropMenu.style.visibility = 'visible';
		prevObjDropMenu = objDropMenu;
		prevObjNavMenu = objNavMenu;
	}
}


function setShow() {
	showMenu = true;
}


function hideDropMenu() {
	if (showMenu) return;
	hideDropMenuForced();
}

function hideDropMenuForced() {
	document.onclick = null;
	if (prevObjDropMenu) {
		prevObjDropMenu.style.visibility = 'hidden';
		prevObjDropMenu = null;
	}
	objNavMenu = null;
}


function centerElem(elem) {
	overallWidth = document.body.clientWidth;
	newLeft = document.body.clientWidth - elem.offsetWidth;
	if (newLeft <= 0) return;
	newLeft = (newLeft / 2);
	elem.style.left =  newLeft + "px"
	return newLeft;
}


function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


initDropMenu();


function scrollText(idname, scrollid, dir){
	var obj = document.getElementById(idname);
	var contentheight = obj.offsetHeight;
	var scroller = document.getElementById(scrollid);
	var increment = scroller.offsetHeight * 3/4;
	if (dir == 'up') {
		if (obj.offsetTop < 0) {
			if (obj.offsetTop + increment > 0) {
				increment -= (obj.offsetTop + increment);
			}
			for (i = 1; i <= increment; i++) {
				setTimeout("document.getElementById('"+idname+"').style.top = '"+(obj.offsetTop + i)+"px';",5*i);
			}
		}
	}
	else if (dir == 'down') {
		if (obj.offsetTop >= (scroller.offsetHeight - contentheight)) {
			if (obj.offsetTop + obj.offsetHeight + scroller.offsetTop - increment < scroller.offsetTop + scroller.offsetHeight) {
				increment -= (scroller.offsetTop + scroller.offsetHeight) - (obj.offsetTop + obj.offsetHeight + scroller.offsetTop - increment);
			}
			for (i = 1; i <= increment; i++) {
				if (obj.offsetTop + obj.offsetHeight + scroller.offsetTop - increment < scroller.offsetTop + scroller.offsetHeight) {
					break;
				}
				setTimeout("document.getElementById('"+idname+"').style.top = '"+(obj.offsetTop - i)+"px';",5*i);
			}
		}
	}
	return false;
}
