$(function() {
	var current = 0;
	
	$('#menu .sub'+parseInt(1)).css({backgroundPosition: '-309px 0'});
	$('#menu .sub'+parseInt(1)).find('li').hide();
	
	$('#menu').mouseleave(function() {
		$('#menu .sub'+parseInt(current+1)).find('li').hide();
		$('#menu .sub'+parseInt(current+1)).stop().animate({backgroundPosition:"(-309px 0)"},0,function(){});
	});

	var loaded  = 0;
	for(var i = 1; i <4; ++i)
		$('<img />').load(function(){
			++loaded;
			
			if(loaded == 3){
				$('#bg1,#bg2,#bg3').mouseover(function(e){
					
					var $this = $(this);
					var item = e.target.id;

					if(item == 'bg1' || current == 2)
						$('#menu .sub'+parseInt(current+1)).stop().animate({backgroundPosition:"(-309px 0)"},0,function(){
							$(this).find('li').hide();
						});
					else
						$('#menu .sub'+parseInt(current+1)).stop().animate({backgroundPosition:"(309px 0)"},0,function(){
							$(this).find('li').hide();
						});

					if(item == 'bg1' || current == 2){
						$('#menu > li').animate({backgroundPosition:"(-930px 0)"},0).removeClass('bg1 bg2 bg3').addClass(item);
						move(1,item);
					}
					else{
						$('#menu > li').animate({backgroundPosition:"(930px 0)"},0).removeClass('bg1 bg2 bg3').addClass(item);
						move(0,item);
					}
					if(current == 2 && item == 'bg1'){
						$('#menu .sub'+parseInt(current)).stop().animate({backgroundPosition:"(-309px 0)"},0);
					}
					if(current == 0 && item == 'bg3'){
						$('#menu .sub'+parseInt(current+2)).stop().animate({backgroundPosition:"(309px 0)"},0);
					}

					current = $this.parent().index();

					$('#menu .sub'+parseInt(current+1)).stop().animate({backgroundPosition:"(0 0)"},0,function(){
						$(this).find('li').fadeIn();
					});
				});
			}	
		}).attr('src', 'images/'+i+'.jpg');
	
	function move(dir,item){
		if(dir){
			$('#bg1').parent().stop().animate({backgroundPosition:"(0 0)"},0);
			$('#bg2').parent().stop().animate({backgroundPosition:"(-309px 0)"},0);
			$('#bg3').parent().stop().animate({backgroundPosition:"(-618px 0)"},0,function(){
				$('#menuWrapper').removeClass('bg1 bg2 bg3').addClass(item);
			});
		}
		else{
			$('#bg1').parent().stop().animate({backgroundPosition:"(0 0)"},0,function(){
				$('#menuWrapper').removeClass('bg1 bg2 bg3').addClass(item);
			});
			$('#bg2').parent().stop().animate({backgroundPosition:"(-309px 0)"},0);
			$('#bg3').parent().stop().animate({backgroundPosition:"(-618px 0)"},0);
		}
	}
});
