var tk_navmenu__container_id = "ws_navbar";
var tk_navmenu__navbar_id = "ws_navbar__navbar";
var tk_navmenu__submenu_id = "ws_navbar__submenu";
var tk_navmenu__submenu_container = "ws_navbar__submenu__container";
var tk_navmenu__allLinks = new Array();
var tk_navmenu__allActiveLinks = new Array();
var tk_navmenu__submenu_timer = null;


function tk_navmenu__init() {
	var container = document.getElementById(tk_navmenu__container_id);
	var navbar = document.getElementById(tk_navmenu__navbar_id);
	var navmenu = document.getElementById(tk_navmenu__submenu_id);
	var submenu_c = document.getElementById(tk_navmenu__submenu_container);
	submenu_c.style.visibility="hidden";
	navmenu.isOpen = true;
	navmenu.open = -1;
	tk_navmenu__allLinks = navbar.getElementsByTagName("a");
	for (i=0; i<tk_navmenu__allLinks.length; i++) {
	 	tk_navmenu__allLinks[i].originalPosition = Element.positionedOffset(tk_navmenu__allLinks[i]);
	 	if (tk_navmenu__allLinks[i].className=="navitem") {
	 	 	tk_navmenu__allLinks[i].index = tk_navmenu__allActiveLinks.length;
	 	 	tk_navmenu__allLinks[i].onclick = tk_navmenu__openOrCloseSubMenu;
	 	 	tk_navmenu__allLinks[i].submenu = document.getElementById("sm_"+i);
	 	 	//tk_navmenu__allLinks[i].offsetX = tk_navmenu__allLinks[i].positionedOffset()[0];	
	 	 	tk_navmenu__allLinks[i].submenu.style.position = "relative";
	 	 	tk_navmenu__allLinks[i].submenu.style.left = tk_navmenu__allLinks[i].originalPosition[0]+"px";
	 	 	tk_navmenu__allLinks[i].submenuElements = tk_navmenu__allLinks[i].submenu.getElementsByTagName("a").length;
	 	 	tk_navmenu__allActiveLinks.push(tk_navmenu__allLinks[i]);
	 	} 
	 	tk_navmenu__allLinks[i].id = "tk_navmenu__links_"+i;
	} tk_navmenu__openOrCloseSubMenu()
	container.style.overflow="visible";
	
}

function tk_navmenu__openOrCloseSubMenu() {
 	var container = document.getElementById(tk_navmenu__container_id);
 	var navmenu = document.getElementById(tk_navmenu__submenu_id);
 	var navbar = document.getElementById(tk_navmenu__navbar_id);
 	var submenuXT = document.getElementById(tk_navmenu__submenu_container);
 	
	if(navmenu.isOpen) {
	 	var startHeight = 0;
	  	var endHeight = this.submenuElements*23+160;
	  	if (endHeight<225) endHeight=225;
	 	if (navmenu.open == this.index) {
		 	endHeight = 0;
		 	new Effect.Opacity(submenuXT, { to: 0, duration: 0.2 });
		 	navmenu.isOpen = false;
		} else {
		 	new Effect.Opacity(submenuXT, { to: 0, duration: 0.2 });
		 	clearTimeout(tk_navmenu__submenu_timer);
		 	tk_navmenu__submenu_timer = setTimeout('delayTheShown("'+this.index+'")', 300);
			navmenu.open = this.index;
		}
		  	var styleTransformString = "height:"+startHeight+"px; height:"+endHeight+"px;";
		 	
		  	new Effect.Morph(navmenu, {
		  		style: styleTransformString, // CSS Properties
		  		duration: 0.5 // Core Effect properties
			}); 
	} else {
	 	var startHeight = 0;
	  	var endHeight = this.submenuElements*23+160;
	  	if (endHeight<225) endHeight=225;
	  	for (i=0; i<(tk_navmenu__allActiveLinks.length); i++) {
	  	 	if (i==this.index) {this.submenu.style.visibility = "visible";}
	  	 	else {
				tk_navmenu__allActiveLinks[i].submenu.style.visibility = "hidden";
			}
	  	}
	  	var styleTransformString = "height:"+startHeight+"px; height:"+endHeight+"px;";
	  	new Effect.Opacity(submenuXT, { from:0, to: 1, duration: 0.5 });
	  	new Effect.Morph(navmenu, {
	  		style: styleTransformString, // CSS Properties
	  		duration: 0.5 // Core Effect properties
		}); var prevOffset = 0;;
		
		
		navmenu.isOpen = true;
		navmenu.open = this.index;
	}
}


function delayTheShown(index) {
 	var submenuXT = document.getElementById(tk_navmenu__submenu_container);
 	clearTimeout(tk_navmenu__submenu_timer);
	for (i=0; i<(tk_navmenu__allActiveLinks.length); i++) {
		if (i==index) {tk_navmenu__allActiveLinks[i].submenu.style.visibility = "visible";}
		else {
			tk_navmenu__allActiveLinks[i].submenu.style.visibility = "hidden";
		}
	}
	new Effect.Opacity(submenuXT, { to: 1, duration: 0.2 });
}