var imagesArray = new Array();

function initImages(){
	addImages("", "", "", "xxxx/12/01", "xxxx/03/01"); //Vinter
	addImages("http://www.unikum.se/images/bkg_back.png", "http://www.unikum.se/images/bkg_front_absolute.png", "http://www.unikum.se/images/bkg_front_fixed.png", "2011/11/01", "2011/12/11"); //Jul
	addImages("", "", "", "XXXX/03/01", "XXXX/05/30"); //Vår
	addImages("", "", "", "xxxx/06/01", "xxxx/09/01"); //Sommar
	addImages("", "", "", "xxxx/09/01", "xxxx/12/01"); //Höst
}

function addImages(backImage, frontImage, frontImage2, from, to){
	imagesArray.push(backImage+";"+frontImage+";"+frontImage2+";"+from+";"+to);
}

function addDynamicBackground(){
	var frontDiv = document.createElement('div');
	var frontDiv2 = document.createElement('div');
	var tmp = new Array(4);

	initImages();

	for(i = 0; i < imagesArray.length; i++){
		tmp = imagesArray[i].split(';');
		if(isInInterval(tmp[3], tmp[4])){
			document.body.style.background = "url('"+tmp[0]+"') repeat-x top left";
			if(frontDiv != null){
				frontDiv.style.background = "url('"+tmp[1]+"') no-repeat top left";
				frontDiv.className = "dynamicAbsoluteFront";
			}
			if(frontDiv2 != null){
				frontDiv2.style.background = "url('"+tmp[2]+"') no-repeat top left";
				frontDiv2.className = "dynamicFixedFront";
			}
		}
		else{
		}
	}
	document.body.appendChild(frontDiv);
	document.body.appendChild(frontDiv2);
}

//Förutsätter att from och to har formatet yyyy/mm/dd. Om år är odefinierat skarivs ersätts det med xxxx.
function isInInterval(from, to){
	var curDate = new Date();
	var curYear = curDate.getFullYear();
	var curMonth = curDate.getMonth() + 1;
	var curDay = curDate.getDate();
	var fromYear = from.substring(0,4);
	var fromMonth = from.substring(5,7);
	var fromDay = from.substring(8,10);
	var toYear = to.substring(0,4);
	var toMonth = to.substring(5,7);
	var toDay = to.substring(8,10);
	var newYear = false;

	//Ta reda på om det är årsskifte
	if(fromYear == "xxxx" || toYear == "xxxx"){
		if(fromMonth > toMonth){
			newYear = true;
		}
		else if(fromMonth == toMonth){
			if(fromDay > toDay){
				newYear = true;
			}
		}
	}
	
	if(newYear){
		if(fromYear != "xxxx"){
			toYear = fromYear + 1;
		}
		else if(toYear != "xxxx"){
			fromYear = toYear - 1;
		}
		else{
			fromYear = curYear - 1;
			toYear = curYear;
		}
		//Låt funktionen anropa sig själv fast utan några xxxx och uppdelad i 2 eftersom det är nytt år.
		if(isInInterval(curYear+"/"+fromMonth+"/"+fromDay, curYear+"/12/31") || isInInterval(curYear+"/01/01", toYear+"/"+toMonth+"/"+curDay)){
			return true;
		}
		else{
			return false;
		}
	}

	if(fromYear < curYear){
		//Gå vidare...
	}
	else if(fromYear == "xxxx" || fromYear == curYear){
		if(fromMonth < curMonth){
			//Gå vidare...
		}
		else if(fromMonth == "xx" || fromMonth == curMonth){
			if(fromDay == "xx" || fromDay <= curDay){
				//Gå vidare...
			}
			else{
				return false;
			}
		}
		else{
			return false;
		}
	}
	else{
		return false;
	}
	if(toYear > curYear){
		return true;
	}
	else if(toYear == "xxxx" || toYear == curYear){
		if(toMonth > curMonth){
			return true;
		}
		else if(toMonth == "xx" || toMonth == curMonth){
			if(toDay == "xx" || toDay >= curDay){
				return true;
			}
			else{
				return false;
			}
		}
		else{
			return false;
		}
	}
	else{
		return false;
	}
	return true;
}
