var navOn = 0;
var subnavOn = false;
var mlOn = 0;

$( function(){

  var config = {    
	sensitivity: 5,
	interval: 200,
	over: navOver,
	timeout: 1000,
	out: navOut
  };

  $("#nav a").hoverIntent( config );

  var config = {    
	sensitivity: 5,
	interval: 200,
	over: subnavOver,
	timeout: 500,
	out: subnavOut
  };

  $("#subnav_fg,#subnav_bg").hoverIntent( config );

  var config = {    
	sensitivity: 5,
	interval: 200,
	over: mlOver,
	timeout: 500,
	out: mlOut
  };

  $("#join_maillist").hoverIntent( config );

  $("#launch_player_fg").hover( function(){
	$("#launch_player_bg").addClass('on');
  }, function(){
	$("#launch_player_bg").removeClass('on');
  });

});
function mlOver(){
  if( mlOn == 0 ) resetNav();
  mlOn++;
  $("#soundwave").addClass('slide');
  $("#join_maillist").show();
  debg();
}
function mlOut(){
  mlOn--;
  if( mlOn <= 0 ){
	mlOn = 0;
	$("#soundwave").removeClass('slide');
	$("#join_maillist").hide();
	//navOut();
	//resetNav();
  }
  debg();
}
function navOver(){
  cache = $(this).attr("class");
  if( cache == 'maillist' ){
	mlOver();
  }else{
	mlOut();
	if( $.browser.msie && $.browser.version < 7 ){
	  $("#subnav_bg").removeClass().addClass( cache ).css("display","block").css('backgroundColor','black');
	}else{
	  $("#subnav_bg").removeClass().hide().addClass( cache ).fadeIn("fast");
	}
	$("#arrows").removeClass().addClass( cache );
	$("#subnav_fg").find("div").each( function(){
	  $(this).hasClass(cache) ? $(this).show() : $(this).hide();
	});
	pages = ['news','tour','band','sounds','records','merch','contact','live'];
	if( $.inArray(cache, pages) > -1 ){
	  $("#soundwave h3").hide();
	  $("#soundwave").addClass("off").find("h3."+cache).show();
	}
	navOn++;
  }
  debg();
}
function navOut(){
  cache = $(this).attr("class");
  if( cache == 'maillist' ){
	mlOut();
  }else{
	navOn--;
	if( navOn==0 && !subnavOn && mlOn==0 ){
	  resetNav();
	}
  }
  debg();
}
function subnavOver(){
  subnavOn = true;
  debg();
}
function subnavOut(){
  subnavOn = false;
  if( navOn==0 && !subnavOn ){
	resetNav();
  }
  debg();
}
function debg(){ 
  return;
  /*
  caller = arguments.callee.caller.toString();
  console.log( caller.substr(0, caller.search("{")) );
  console.log('navOn :' + navOn);
  console.log('subnavOn :' + subnavOn);
  console.log('mlOn :' + mlOn);
  */
}
