/**
 * @author DGrayston@TenAlps
 */

var hoverMenu = {
		
	active : false ,
	
	defaultSiteId : null ,
	
	init : function(){
		hoverMenu.setupEvents();
		hoverMenu.defaultSiteId = $('#group_sites .active').parent('div').attr('id');
	} ,
	
	setupEvents : function(){
		
		$('#group_sites .menusite').mouseover( function(){
			var id = $(this).attr('id');
			var hoverElem = $('#group_rollover_' + hoverMenu.getSiteId(id) );
			
			if (hoverElem.length > 0) {
				hoverMenu.show(id);
			}
		});
		
		$('#group_sites .menusite, .group_rollover').mouseout( function(){
			hoverMenu.hide();
		});
		
		$('.group_rollover').mouseover( function(){
			hoverMenu.active = true;
		});
					
	} ,
	
	getSiteId : function( id ){
		var idArray = id.split('_');
		return idArray[1];
	} ,
	
	reset : function(){
		$('.group_rollover').hide();
		$('#group_sites .active').removeClass('active');
		$('#group_sites .left_active').removeClass('left_active');
	} ,
	
	activateMainLink : function(id){
		$('#' + id + ' a').addClass('active');
	} ,
	
	addLeftClass : function(id){
		var prevElem = $('#' + id).prev();
	
		if( prevElem.length > 0 )
		{
			prevElem.children('a').addClass('left_active');
		}	
	} ,
	
	hide : function(){
		hoverMenu.active = false;
		setTimeout('hoverMenu.delayHide()',500);
	} ,
	
	delayHide : function(){
		if(hoverMenu.active == false) {
			$('#default_group_categories').css('visibility','visible');
			//$('#feature_box .mpu').css('visibility', 'visible');
			hoverMenu.reset();
			hoverMenu.activateMainLink( hoverMenu.defaultSiteId );
			hoverMenu.addLeftClass( hoverMenu.defaultSiteId );
		}
	} ,
	
	show : function(id){
		hoverMenu.active = true;
		setTimeout('hoverMenu.delayShow(\'' + id + '\')',200);
	} ,
	
	delayShow : function(id){
		if (hoverMenu.active == true) {
			hoverMenu.reset();
			hoverMenu.activateMainLink(id);
			hoverMenu.addLeftClass(id);
			
			var hoverElem = $('#group_rollover_' + hoverMenu.getSiteId(id));
			
			if (hoverElem.length > 0) {
				//$('#feature_box .mpu').css('visibility', 'hidden');
				$('#default_group_categories').css('visibility', 'hidden');
				hoverElem.show();
			}
		}
	}
	
};
	
$(document).ready(function(){
	hoverMenu.init();
});