/**
 * @author Brian Hansen
 * http://brianhansen.net
 */
springloaf = {
	/* global namespace */	
}

springloaf.subnav = {
	/**
	 *  Secondary navigation interaction
	 */
	handlers : function(){
 		$('#subnav li.header').hover(function(){
			$(this).removeClass("subnav-hidden").addClass("subnav-visible");
 		}, function() {
			$(this).removeClass("subnav-visible").addClass("subnav-hidden");
 		}); 
	}	
}

springloaf.dropmenu = {
	/**
	 * Drop menu properties
	 */
	menuProperties : {
		timeout: 480,
		closetimer: 0,
		menuitem: 0
	},
	/**
	 * Open menu
	 */
	open : function(){	
		springloaf.dropmenu.cancelTimer();
		springloaf.dropmenu.close();
		$(this).addClass('active');
		springloaf.dropmenu.menuProperties.menuitem = $(this).find('ul').eq(0).css('visibility', 'visible');
	},
	/**
	 * Close menu
	 */	
	close : function(){
		if(springloaf.dropmenu.menuProperties.menuitem){
			$('#drop-menu li.active').removeClass('active');
			springloaf.dropmenu.menuProperties.menuitem.css('visibility', 'hidden');
		} 
	},
	/**
	 * Menu timer
	 */		
	timer : function(){	
		springloaf.dropmenu.menuProperties.closetimer = window.setTimeout(springloaf.dropmenu.close, springloaf.dropmenu.menuProperties.timeout);
	},
	/**
	 * Cancel timer
	 */
	cancelTimer : function(){
		if(springloaf.dropmenu.menuProperties.closetimer){
			window.clearTimeout(springloaf.dropmenu.menuProperties.closetimer);
			springloaf.dropmenu.menuProperties.closetimer = null;
		}
	},			
	handlers : function(){	
		$('ul#drop-menu > li').bind('mouseover', springloaf.dropmenu.open);
		$('ul#drop-menu > li').bind('mouseout',  springloaf.dropmenu.timer);
	}
	
}

 $(document).ready(function() 
 {	
 	springloaf.subnav.handlers();
	springloaf.dropmenu.handlers();
	$('body').live('click', springloaf.dropmenu.close);
		
});
