var mobile = false;
var WINDOW_WIDTH;
var WINDOW_HEIGHT;
//bg vars
var bgMinWidth;
var bgMinHeight;
var bgCurrentLayer;
var bgFadeInSpeed;
var bgCurrentImg;
var bgHolder;
var bgStatus;
var bgLayerNum = 0;
var bgLoadStart = null;
var bgLoadStartArgs = null;
var bgLoadComplete = null;
var bgLoadCompleteArgs = null;
var bgFadeInComplete = null;
var bgFadeInCompleteArgs = null;
//
$(document).ready(function() {
	mobile = detectMobile();
	WINDOW_WIDTH = $(window).width();
	WINDOW_HEIGHT = $(window).height();
	initBg();
	$(".link").delay(500).animate({opacity:1},87);
	bgLoadComplete = function(){
		$(".link").stop(true).html("");
	}
	bgFadeInComplete = function(){
		$(".link").css({opacity:0});
		var img = new Image();
		img.onload = function() {
			$(".link").animate({opacity:1},300);
		}
		$(".link").html(img);
		img.src = "new/images/text.png";
	};
	changeBg("new/images/bg.jpg");
	
});
$(window).resize(function() {
	WINDOW_WIDTH = $(window).width();
	WINDOW_HEIGHT = $(window).height();
	resizeBg();// adjust background size
});
//
//BACKGROUND FUNCTIONS -->
function initBg(){
	//bg settings
	bgMinWidth = 900;
	bgMinHeight = 600;
	bgFadeInSpeed = 300;
	bgHolder = $("#bgholder");
	//
	bgHolder.css({position:"fixed",top:0,left:0,opacity:1});
}
function changeBg(imgSrc){
	//if(bgCurrentImg != imgSrc){
	if(bgStatus == "loading" && $("#bgLayer"+bgLayerNum).length > 0){
		$("#bgLayer"+bgLayerNum).unbind("load");
		$("#bgLayer"+bgLayerNum).remove();
	}
	if(bgStatus == "loaded" && $("#bgLayer"+bgLayerNum).length > 0){
		$("#bgLayer"+bgLayerNum).stop(true);
	}
	bgEventHandler("start");
	bgStatus = "loading";
	bgLayerNum ++;
	bgHolder.append("<img id='bgLayer"+bgLayerNum+"' src='"+imgSrc+"' />");
	$("#bgLayer"+bgLayerNum).css({position:"absolute",top:0,left:0,opacity:0});
	$("#bgLayer"+bgLayerNum).disableSelection();
	$("#bgLayer"+bgLayerNum).load(function(){
		bgCurrentImg = imgSrc;
		onLoadBg(this);
	});
	//}
}
function stopLoadBg(){
	if(bgStatus == "loading"){
		$("#bgLayer"+bgLayerNum).unbind("load");
		$("#bgLayer"+bgLayerNum).remove();
		bgStatus = "stop";
	}
}
function removeBg(){
	if(bgStatus == "loading"){
		$("#bgLayer"+bgLayerNum).unbind("load");
	}
	cleanBg();
	$("#bgLayer"+bgLayerNum).remove();
	bgStatus = "stop";
}
function onLoadBg(target){
	bgStatus = "loaded";
	bgCurrentLayer = $(target);
	resizeBg();
	bgEventHandler("complete");
	$(target).stop(true).animate({opacity:1},bgFadeInSpeed,function(){
		cleanBg();
		bgStatus = "finished";
		bgEventHandler("fadein");
	});	
}
function cleanBg(){
	var ini = bgLayerNum-5;
	if(ini < 0){
		ini = 0;
	}
	for(var i=ini;i<bgLayerNum;i++){
		if($("#bgLayer"+i).length > 0){
			$("#bgLayer"+i).stop(true);
			$("#bgLayer"+i).remove();
		}
	}
}
function bgEventHandler(Event){
	switch (Event){
	case "start":
		if(bgLoadStart != null){
			if(bgLoadStartArgs != null){
				bgLoadStart.apply(this,bgLoadStartArgs);	
			}else{
				bgLoadStart();		
			}
		}
	break;
	case "complete":
		if(bgLoadComplete != null){
			if(bgLoadCompleteArgs != null){
				bgLoadComplete.apply(this,bgLoadCompleteArgs);	
			}else{
				bgLoadComplete();		
			}	
		}
	break;
	case "fadein":
		if(bgFadeInComplete != null){
			if(bgFadeInCompleteArgs != null){
				bgFadeInComplete.apply(this,bgFadeInCompleteArgs);	
			}else{
				bgFadeInComplete();		
			}	
		}	
	break;
	}
}
function resizeBg(){
	var width = ($(window).width()>bgMinWidth) ? $(window).width() : bgMinWidth;
	var height = ($(window).height()>bgMinHeight) ? $(window).height() : bgMinHeight;
	if((navigator.platform.indexOf("iPad") != -1)){
		if($(window).width()>$(window).height()){
			if(width < 1100){
				width = 1100;
			}
			if(height < 1100){
				height = 1100;
			}
		}else{
			
		}
	}
	bgCurrentLayer.css({width:width,height:"auto"});
	if(bgCurrentLayer.height()<height){
		bgCurrentLayer.css({width:"auto",height:height});
	}
}
//---------- GLOBAL FUNCTIONS ----------
function detectMobile(){
    return Boolean(
        (navigator.platform.indexOf("iPhone") != -1) ||
        (navigator.platform.indexOf("iPod") != -1) ||
		(navigator.platform.indexOf("iPad") != -1) ||
        (navigator.platform.indexOf("iPod") != -1) ||
		(navigator.platform.indexOf("android") != -1) ||
        (navigator.platform.indexOf("blackberry") != -1) ||
		(navigator.platform.indexOf("symbian") != -1) ||
		(navigator.platform.indexOf("series60") != -1) ||
        (navigator.platform.indexOf("windows ce") != -1)

    );
}
