$(document).ready(function(){

	preload();
	var clickable = true;

	$("#home").live("click", function() {
		if (activeMenu()!="home"&&clickable==true) {
			if (browserSupport3D()) {
				document.getElementById("cube").style.webkitTransform = "translateZ(-105px) rotateX(0deg)";
				$("#cube").css("-moz-transform", "translateZ(-105px) rotateX(0deg)");
				$(".blog, .products, .about").show().fadeOut(500);
				$(".home").fadeIn(200);
			} else {
				$(".blog, .products, .about").fadeOut(400);
				$(".home").delay(400).fadeIn(400);
			}
		}
	});

	$("#products").live("click", function() {
		if (activeMenu()!="products"&&clickable==true) {
			if (browserSupport3D()) {
				document.getElementById("cube").style.webkitTransform = "translateZ(-105px) rotateX(90deg)";
				$("#cube").css("-moz-transform", "translateZ(-105px) rotateX(90deg)");
				$(".blog, .home, .about").show().fadeOut(500);
				$(".products").fadeIn(200);
			} else {
				$(".blog, .home, .about").fadeOut(400);
				$(".products").delay(400).fadeIn(400);
			}
		}
	});

	$("#about").live("click", function() {
		if (activeMenu()!="about"&&clickable==true) {
			if (browserSupport3D()) {
				document.getElementById("cube").style.webkitTransform = "translateZ(-105px) rotateX(-90deg)";
				$("#cube").css("-moz-transform", "translateZ(-105px) rotateX(-90deg)");
				$(".blog, .products, .home").show().fadeOut(500);
				$(".about").fadeIn(200);
			} else {
				$(".blog, .home, .products").fadeOut(400);
				$(".about").delay(400).fadeIn(400);
			}
		}
	});

	$("#blog").live("click", function() {
		location.href = "http://twitter.com/electerious"
	});

	$(".menu_item").live("click", function() {
		if (clickable==true) {
			clickable = false;
			if ($(this).attr("id")!="blog") {
				$(".menu_item").removeClass("selected");
				$(this).addClass("selected");
			}
			$.timer(600,function(){
				clickable = true;
			});
		}
	});

});

function preload() {

    var srcs = [
    	"electerious/img/electerious.png",
    	"electerious/img/frame.png",
    		"electerious/img/icons/blog.png",
    		"electerious/img/icons/home.png",
    		"electerious/img/icons/icon.png",
    		"electerious/img/icons/products.png",
    	"electerious/img/overlay.png",
    	"electerious/img/selected.png",
    	"electerious/img/selected_hover.png",
    	"electerious/img/visit-icon.png",
    	"electerious/img/fullsize-icon.png",
    		"electerious/img/mini/blog.png",
    		"electerious/img/mini/buttons.png",
    		"electerious/img/mini/icon.png",
    		"electerious/img/mini/loadicious.png",
    		"electerious/img/mini/map.png",
    		"electerious/img/mini/shine.png",
    		"electerious/img/mini/work.png"
    	],
		srcs_length = srcs.length,
		add_width = 110/srcs_length;


    $.preload(srcs, {
	    init: function(loaded, total) {
	        $("#indicator").html("Loading ...");
	    },
	    loaded: function(img, loaded, total) {
	        $("#indicator").html("Loading ("+loaded+"/"+total+")");
	        var new_width = 20 + loaded * add_width;
	        new_width = new_width + "px";
	        $("#progress #loaded").css("width", new_width);
	    },
	    loaded_all: function(loaded, total) {
	        $("#indicator").html("Loaded ("+loaded+"/"+total+")");
	        $("#progress #loaded").css("width", "126px");
	        $("#progress, #indicator").delay(500).fadeOut(400);
			contentfadeIn();
	    }
	});

}

function contentfadeIn() {

	appendLines();

	$(".fullsize").qiklook({
		dim: 0.3,
		dimContent: "#everything",
		useAttr: "title"
	});
	if (browserSupport3D(true)) {
		$.timer(900,function(){
			$("#content").show().addClass("fadeIn");
			$.timer(500,function(){
				$("#logo").addClass("fadeIn");
				$.timer(400,function(){
					$("#menu").addClass("fadeIn");
				});
			});
		});
	} else {
		$("#content").css("opacity", 1);
		$("#logo").css("opacity", 1);
		$("#menu").css("opacity", 1);
		$.timer(900,function(){
			$("#content").fadeIn(2000);
		});
	}

}

function appendLines() {

	var a = '<div class="line_bottom"></div><div class="line_left"></div><div class="line_right"></div>'
	$(".image").prepend(a);

}

function activeMenu() {

	return $(".selected").attr("id");

}

function browserSupport3D(extended) {

	if ((BrowserDetect.browser=="Safari"&&BrowserDetect.version>5)||(BrowserDetect.browser=="Chrome"&&BrowserDetect.version>14)||(BrowserDetect.browser=="Firefox"&&BrowserDetect.version>=10)) {
		return true;
	} else {
		if (extended&&BrowserDetect.browser=="Firefox"&&BrowserDetect.version>5) {
			return true;
		} else {
			return false;
		}
	}

}
