/*Global.js*/

var STM = jQuery.noConflict();
STM(document).ready(function(){

	// -----------------------------------------------------------
	// MAIN NAVIGATION
	// -----------------------------------------------------------
	
	var default_nav;	
	default_nav_class = "active";
	var nav_timeout;
	
	STM.each(STM("#stm-nav").children("li"),function(){
		if(STM(this).hasClass("current_page_ancestor") || STM(this).hasClass("current_page_item") || STM(this).hasClass("current_page_parent")){
			default_nav = STM(this);
			hilite_nav(default_nav);
		}
	});
	
	//Trigger submenus
	STM("#stm-nav li").hover(
		function(){
			var parent = STM(this).closest("ul");
			var subnav = STM(this).find("ul.subnav");
			if(subnav.length > 0 || STM(parent).attr("id") == "stm-nav"){
				clearTimeout(nav_timeout);
				STM("#stm-nav li").removeClass("hilite");
				hilite_nav(STM(this));
			}
		}, 
		function () {
			var parent = STM(this).closest("ul");
			var subnav = STM(this).find("ul.subnav");
			if(subnav.length > 0 || STM(parent).attr("id") == "stm-nav"){
				var nav = STM(this);
				nav_timeout = setTimeout(function(){lolite_nav(nav)}, 250);
			}
		}
	);
	
	function hilite_nav(nav){
		if(STM(nav).html() != STM(default_nav).html()){
			STM(nav).addClass("hilite");
			STM(default_nav).removeClass(default_nav_class);
			STM(default_nav).addClass("lolite");
		}else{
			STM(default_nav).addClass(default_nav_class);
			STM(default_nav).removeClass("lolite");
		}
	}
	function lolite_nav(nav){
		STM(nav).removeClass("hilite");
		STM(default_nav).addClass(default_nav_class);
		STM(default_nav).removeClass("lolite");
	}

	/*Shift submenus that are too far to the right, to the left.*/
	var nav_width = STM("#stm-nav").innerWidth();		
	var submenus = STM("#stm-nav li").find("ul");
	STM.each(submenus,function(){	
		var subitems = STM(this).find("li");
		var submenu_actual_width = 0;
		STM.each(subitems,function(){
			submenu_actual_width += STM(this).outerWidth();
		});	
		var parent_pos = STM(this).parent().position();
		var submenu_available_width = (nav_width - parent_pos.left) - 48;
		if(submenu_available_width < submenu_actual_width ){
			var offset = (submenu_available_width - submenu_actual_width) - 5;
			STM(this).css("left", offset + "px");
		}		
	});
    
    //External Links
    STM("a[rel='blank']").click(function(){
		window.open(this.href, null, 'directories=yes,location=yes,menubar=yes,resizable=yes,scrollbars=yes,status=yes,toolbar=yes');
		return false;
    });
                   
});
