// JavaScript Document
jQuery.noConflict();	// for mootools
if (!window.console) {
	window.console = { log: function(){} };
}
jQuery(function($) {
	var images = [];
	var $placeholder = $(".placeholder");
	var $topMenu = $(".top-menu");
	var $progress = $(".progress");
	var $images = $(".images");
	var hidden = { visibility: "hidden" };
	var ready = { opacity: 0, visibility: "visible" };

	$placeholder.css(hidden);
	$topMenu.css(hidden);
	$(".images").find("img").each(function() {
		images.push(this.src);
	});

	if ($.browser.msie) {
		//DD_belatedPNG.fix('.top-menu img, .block-body');	// for .top-menu transparency
	}

	var loadingImage = images.shift();
	$images.find("li:first").remove();	// remove loading image from DOM tree
	console.log(loadingImage);
	var loadingImageObject = new Image();
	$(loadingImageObject).bind("load", loadingImageLoad);
	loadingImageObject.src = loadingImage;
	
	function loadingImageLoad() {
		console.log("loading load");
		$progress.find("li").css({ opacity: 0 });
		$placeholder.css(ready).animate({ opacity: 1 }, 1500);
		progressStart();
	};
	function progressStart() {
		var pos = 0;
		var loaded = 0;
		var len = $progress.find("li").length;
		var imageObjectList = [];
		var progressTimerId = setInterval(step, 2000);
		console.log(["progressstart", images]);

		for (var i = 0; i < len; i++) {
			var object = new Image();
			imageObjectList.push(object);
			$(object).bind("load", function() {
				console.log(["loaded", loaded, this]);
				loaded++;
			});
			object.src = images[i];
		}
		function step() {
			pos++;
			var $target = $progress.find("li").eq(pos % len - 1);
			var opacity = $target.css("opacity");
			$target.animate({ opacity: Math.abs(opacity - 1) });
			//$progress.find("li").not($target).animate({ opacity: 0 });
			console.log(["progressstep", pos, $target]);
			if (loaded >= images.length) {
				clearInterval(progressTimerId);
				progressFinish();
			}
		};
	};
	function progressFinish() {
		var pos = 0;
		console.log(["progressfinish"]);
		$progress.find("li").stop().animate({ opacity: 1 });
		$topMenu.css({ visibility: "visible" });
		$topMenu.css({ opacity: 0 });
		if ($.browser.msie) {
			$("shape").remove();
			DD_belatedPNG.fix('.top-menu img, .block-body');	// for .top-menu transparency
		}
		$topMenu.animate({ opacity: 1 }, 2000);		
		//setTimeout(loop, 5500);

/*		function loop() {
			pos++;
			var callee = arguments.callee;			
			$placeholder.animate({ opacity: 0 }, 1000, function() {
				$placeholder.css({ visibility: "hidden" });
				var $target = $images.find("li").eq(pos % images.length);
				$images.find("li").not($target).hide();
				$target.show();
				$placeholder.css(ready).animate({ opacity: 1 }, 1000);
				//console.log(["loop", pos, $target]);
				setTimeout(callee, 5500);
			});
		}*/
	};
});

