var curr_sub_nav = null;
var curr_nav = null;
var ondropdown = false;
var sub_nav_arr = [];
var curr_sub_nav2 = null;

window.onload = function(){
	setMasterNav('navigation');	
}

setMasterNav = function(nav_id){
	//master_nav[nav_id] = new Array();
	var master_nav = document.getElementById(nav_id);
	var menuitems = master_nav.getElementsByTagName("li");
	var menuctr = 0;
	for(var i=0;i<menuitems.length;i++){
		if(menuitems[i].getAttribute("value")){
			menuctr++;
			menuitem = menuitems[i];
			menuitem.master_nav = master_nav;
			menuitem.curr_x = get_x(menuitem);
			menuitem.alink = menuitem.getElementsByTagName("a")[0];
			if(menuctr != 1){
				menumargin = ((menuctr-1)*138);
			}else{
				menumargin = 4;	
			}
			if(document.getElementById(menuitem.getAttribute("value"))){
				menuitem.sub_nav = document.getElementById(menuitem.getAttribute("value"));
				menuitem.sub_nav.parent_nav = menuitem;
				//menuitem.sub_nav.style.left = (menuitem.curr_x-481)+'px';
				menuitem.sub_nav.style.marginLeft = menumargin+'px';
				menuitem.sub_nav.initH = menuitem.sub_nav.offsetHeight;
				menuitem.sub_nav.style.height = 0;
				menuitem.sub_nav.style.visibility = 'visible';
				menuitem.sub_nav.ondropdown = false;
				menuitem.num = i;
				sub_nav_arr[menuitem.num] = menuitem.sub_nav;
				//alert(menuitem.className);
				/*
				if (menuitem.className == "selected"){
					showsubmenu(menuitem.sub_nav);
				}
				*/
				menuitem.alink.sub_nav = menuitem.sub_nav;
				
				menuitem.t10 = null;
				
				menuitem.alink.onmouseover = function(){
					showsubmenu(this.sub_nav);
				}
				menuitem.alink.onmouseout = function(){
					hidesubmenu(this.sub_nav);			
				}
				/*
				menuitem.onmouseover = function(){
					//document.title = this.curr_x;
					//alert(sub_nav_arr[this.num]);
					//alert(this.curr_x);
					showsubmenu(this.sub_nav);
					hidesubmenu(this.sub_nav);
				}
				*/
				
				menuitem.onmouseout = function(){
					//curr_sub_nav = null;
				}
				
				/*
				menuitem.onmouseout = function(){
					curr_sub_nav2 = this.sub_nav;
					clearTimeout(this.t10);
					this.t10 = window.setTimeout(hidesubmenu(),2000);
				}
				*/
				
				menuitem.sub_nav.onmouseover = function(){
					this.ondropdown = true;	
				}
				menuitem.sub_nav.onmouseout = function(){
					this.ondropdown = false;	
				}
				
				//menuitem.sub_nav.style.display = 'none';
				/*
				menuitem.sub_nav.iniY = -24*(i+1);
				menuitem.sub_nav.parent_nav = menuitem;
				
				if (menuitem.className == "selected"){
					showsubmenu2(menuitem.sub_nav);
				}
				
				menuitem.onmouseover = function(){
					showsubmenu2(this.sub_nav);
				}
				*/
				
			}
			
			
		}
	}
}
hidesubmenu = function(tar){
	//alert(sub_obj);
	//adjustH(sub_obj, curr_sub_nav.initH, 0);
	clearTimeout(tar.t10);
	tar.t10 = window.setTimeout(function(){
											 if(!tar.ondropdown){
												 if(tar.offsetHeight > 10){
													 adjustH(tar, tar.initH, 0);
												 }
											 }else{
												 hidesubmenu(tar);
											 }
											},500);
}
showsubmenu = function(sub_obj){
	//if(sub_obj.parent_nav != curr_nav){
		if(curr_nav != null){
			if (sub_obj.parent_nav.className == "selected"){
				curr_nav.className = '';
			}
		}
		
		if (sub_obj.parent_nav.className != "selected"){
			sub_obj.parent_nav.className = 'highlighted';
		}
		curr_nav = sub_obj.parent_nav;
		
		if(curr_sub_nav != null){
			//curr_sub_nav.style.display = 'none';
			//adjustY(curr_sub_nav, 0, 24);
			if(curr_sub_nav.offsetHeight > 10){
				adjustH(curr_sub_nav, curr_sub_nav.initH, 0);
			}
		}
		//sub_obj.style.display = 'block';
		adjustH(sub_obj, 0, sub_obj.initH);
		curr_sub_nav = sub_obj;
	//}
}

function get_y(obj){
    var curtop = 0;
    if(obj.offsetParent){
		while(1){
			curtop += obj.offsetTop;
			if(!obj.offsetParent){
				break;
			}			
			obj = obj.offsetParent;
		}
	}else if(obj.y){
        curtop += obj.y;
	}
    return curtop;
}
function get_x(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;
}

adjustH = function(tar, ini, end){
	clearInterval(tar.t3);
	clearTimeout(tar.t4);
	tar.t3 = window.setInterval(function () {
		ini -= (ini - end)/2;
		tar.style.height = ini+"px";
	},50);
	
	tar.t4 = window.setTimeout(function(){
		clearInterval(tar.t3);
		clearTimeout(tar.t4);
	},2000);	
}

function adjustH2(tar, val){
	tar = new Tween(tar.style,'height','',parseInt(tar.style.height),10,1,'px');
	tar.func = eval('Tween.strongEaseInOut');
	tar.continueTo(val, 1);
}
