/* 
 * NimbleHost Accordion Menu
 * Copyright 2010. All rights reserved.
 *
 */

function nhAccordionMenu() {
	$dexture('#menu ul a').each(function() {
		if( $dexture(this).width() > 32 && !( $dexture(this).is('#menu ul .current') ) && !( $dexture(this).is('#menu ul .currentAncestor') ) ) {
			$dexture(this).addClass('shortenedMenuItem');
		}
	});
	
	var revealMenuConfig = {
		sensitivity: 3, // number = sensitivity threshold (must be 1 or higher)    
		interval: 40, // number = milliseconds for onMouseOver polling interval    
		over: revealMenu, // function = onMouseOver callback (REQUIRED)    
		timeout: 400, // number = milliseconds delay before onMouseOut    
		out: hideMenu
		};
	
	function revealMenu(){
		var rm_menuItemWidth = $dexture(this).css({'width':'auto'}).width();
		if ( navigator.userAgent.match(/Firefox/) ) {
			rm_menuItemWidth += 1;
		}
		if ( $dexture(this).is('.shortenedMenuItem') ) {
			$dexture(this).css({'width':'35px'});
			$dexture(this).siblings('.menuEllipsis').animate({'opacity':0,'paddingRight':0,'paddingLeft':0,'marginRight':'-12px'}, 'normal');
			$dexture(this).animate({'width':rm_menuItemWidth}, 'normal');
			$dexture(this).children('.hoverMenuItemBorder').css({'width':rm_menuItemWidth, 'left': '10px','display':'none'}).fadeIn(1000);
		} else {
			$dexture(this).children('.hoverMenuItemBorder').css({'width':rm_menuItemWidth, 'left': '10px','display':'none'}).fadeIn(700);
		}
	}
	
	function hideMenu(){
		if ( $dexture(this).is('.shortenedMenuItem') ) {
			$dexture(this).animate({'width':'35px'}, 'normal');
			$dexture(this).siblings('.menuEllipsis').animate({'opacity':1.0,'paddingRight':'10px','paddingLeft':'2px','marginRight':0}, 'normal');
			$dexture(this).children('.hoverMenuItemBorder').fadeOut();
		} else {
			$dexture(this).children('.hoverMenuItemBorder').fadeOut();
		}
	}
	
	$dexture('#menu ul a').hoverIntent(revealMenuConfig);
}

function sidebarSubMenu() {
	if ( $dexture('#menu ul .current+ul').size() > 0 || $dexture('#menu ul .currentAncestor+ul').size() > 0 ) {
		$dexture('#subMenu').css({'display': 'none'}).slideDown(700);
	}

	var subMenuConfig = {
		sensitivity: 3, // number = sensitivity threshold (must be 1 or higher)    
		interval: 50, // number = milliseconds for onMouseOver polling interval    
		over: revealSubMenuChildren, // function = onMouseOver callback (REQUIRED)    
		timeout: 700, // number = milliseconds delay before onMouseOut    
		out: hideSubMenuChildren
		};
	
	function revealSubMenuChildren(){
		$dexture(this).find("ul:first").css({visibility: "visible",display: "none"}).slideDown(400);
	}
	
	function hideSubMenuChildren(){
		$dexture(this).find("ul:first").slideUp(500);
	}
	
	$dexture("#subMenu ul ul ul").parent().addClass("ddarrow");
	$dexture("#subMenu ul ul ul").parent().append("<span></span>");
	$dexture("#subMenu ul ul ul").css({display: "none"}); // Opera Fix
	$dexture("#subMenu ul ul li").hoverIntent(subMenuConfig);
}

$dexture(document).ready(function() {
	if( !((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || (navigator.userAgent.match(/Android/)) || (navigator.userAgent.match(/webOS/)))){
		nhAccordionMenu();
		
		if( !($dexture.browser.msie) ) {
			sidebarSubMenu();
		} else if ( $dexture.browser.msie ) {
			if(parseInt($dexture.browser.version) >= 8) {
				sidebarSubMenu();
			}
		}
	}
});
