$(document).ready(function() {
	$(".cell").hide();

	//var loadedImgs = $.preloadCssImages({statusTextEl: '#textStatus', statusBarEl: '#status'});
});

$(window).load(function () { 
	//$('#loadInfo').fadeOut('slow'); 
	transitionIn();
});

function transitionIn(){
	var d = 1000;
	$(".cell").show();
	$(".description").each(function(index){
		$(this).slideUp();
	});
	$(".cell").each(function(index){
		//var newPosX = 0;
		var oPosX = $(this).position();
		if(oPosX.left < 100){
			$(this).css("left", oPosX.left-1000);
		}else{
			$(this).css("left", oPosX.left+1000);
		}
		
		if(oPosX.top < 300){
			$(this).css("top", oPosX.top-1000);
		}else{
		 	$(this).css("top", oPosX.top+1000);
		}
		
		var ran = Math.random()*500 + index*100;
		d = ran;
		$(this).css("visibility", "visible");
		$(this).delay(d).animate({left:oPosX.left, top:oPosX.top}, 1000, 'easeOutBack', function(){
			$(this).mouseenter(function(){cellOver($(this))});
			$(this).mouseleave(function(){cellOver()});
		});
		
	});	
}

function transitionOut(url){
	var filename = location.pathname.substr(location.pathname.lastIndexOf("/")+1,location.pathname.length);
	if(url != filename){
		var count = 0;
		$(".cell").each(function(index){
			var posX = 0;
			var posY = 0;
			var oPosX = $(this).position();
			if(oPosX.left < 100){
				posX = oPosX.left-1000;
			}else{
				posX = oPosX.left+1000;
			}
			
			if(oPosX.top < 300){
				posY = oPosX.top-1000;
			}else{
			 	posY = oPosX.top+1000;
			}
			
			var ran = Math.random()*500 + index*100;
			d = ran;
		
			$(this).delay(d).animate({left:posX, top:posY}, 1000, 'easeInBack', function(){
				count++;
				if(count == $(".cell").length){
					window.location = url;
				}
			});
		
		});
	}
}

function cellOver(obj){
	$(".description").each(function(index){
		$(this).slideUp();
	});

	$(obj).find(".description").slideDown();
}

