//Init Months
var monthArray = Array();
monthArray[0] = 'Janvier'; monthArray[1] = 'Février'; monthArray[2] = 'Mars'; monthArray[3] = 'Avril'; monthArray[4] = 'Mai'; monthArray[5] = 'Juin'; monthArray[6] = 'Juillet'; monthArray[7] = 'Août'; monthArray[8] = 'Septembre'; monthArray[9] = 'Octobre'; monthArray[10] = 'Novembre'; monthArray[11] = 'Décembre';

//Init Days
var daysArray = Array();
daysArray[0] = 'Dimanche'; daysArray[1] = 'Lundi'; daysArray[2] = 'Mardi'; daysArray[3] = 'Mercredi'; daysArray[4] = 'Jeudi'; daysArray[5] = 'Vendredi'; daysArray[6] = 'Samedi';

function SlideShow(divID,initheight)
{
	var currentHeight = parseInt(getElm(divID).style.height);
	if(currentHeight < initheight){
		var incrHeight = 8;
		if(currentHeight + 8 < 0){
			incrHeight = initheight - currentHeight;
		}
		getElm(divID).style.height = currentHeight + incrHeight + "px";
		setTimeout("SlideShow('" + divID + "'," + initheight + ")",10);
	}
}

function SlideHideMe(divID)
{
	var currentHeight = parseInt(getElm(divID).style.height);
	if(currentHeight > 0){
		getElm(divID).style.height = currentHeight - 8 + "px";
		setTimeout("SlideHideMe('" + divID + "')",10);
	}else{
		if(parseInt(getElm(divID).style.height) < 0){
			getElm(divID).style.height = "0px";
		}
	}
}

function GetData()
{
	if(xHRObject && xHRObject.readyState == 4 && xHRObject.status == 200){
		var xmlDoc = xHRObject.responseXML;
		nowMonth = GetElemTxt(xmlDoc,'month',0);
		nowMonth = parseInt(nowMonth - 1);
		nowYear = GetElemTxt(xmlDoc,'year',0);
		if(isNaN(parseInt(currentMonth)) || isNaN(parseInt(currentYear))){
			currentMonth = nowMonth;
			currentYear = nowYear;
		}
		getElm("monthyear").innerHTML = monthArray[nowMonth] + " " + nowYear;
		var revueArray = xmlDoc.getElementsByTagName("revue");
		var valuesArray = new Array();
		for($i = 0; $i < revueArray.length; $i++){
			var tmpday = parseInt(parseFloat(revueArray[$i].getAttribute("date").substr(8,2)));
			valuesArray[tmpday] = tmpday;
		}
		getElm("innerdays").className = "";
		var tmpDate = new Date();
		tmpDate.setYear(nowYear);
		tmpDate.setMonth(nowMonth);
		tmpDate.setDate(1);
		
		//Fill start empty days
		var inner = "";
		if(tmpDate.getDay() != 6){
			for($i = 0; $i <= tmpDate.getDay(); $i++){
				inner += "<div>&nbsp;</div>";
			}
			getElm("innerdays").innerHTML = inner;
		}
		inner = "";
		var nm = parseInt(nowMonth) + 1;
		var zeroedMonth = (nm >= 10) ? nm : '0' + nm;
		for($i = 1; $i <= 31; $i++){
			var tmpDate = new Date(nowYear,nowMonth,$i);
			if(tmpDate.getMonth() != nowMonth){
				break;
			}
			inner += "<div>";
			if(!isNaN(valuesArray[$i])){
				var zeroedDay = ($i >= 10) ? $i : '0' + $i;
				inner += '<a href="revue-de-presse/revue-de-presse-' + zeroedDay + '-' + zeroedMonth + '-' + nowYear + '.html">' + $i + '</a>';
			}else{
				inner += $i;
			}
			inner += "</div>";
		}
		getElm("innerdays").innerHTML += inner;
		xHRObject = null;
	}
}

function fillCalendar(what)
{
	var theURL = siteURL + "ajax/revue_calendar.php";
	if(what == ""){
		xHRObject = sendXHR('Get',theURL + '?z=z',GetData);
	}else if(typeof(nowMonth) != 'undefined'){
		if(what == "next"){
			if(currentMonth == nowMonth && currentYear == nowYear){
				//do nothing
			}else{
				if(nowMonth + 1 > 11){
					nowMonth = 0;
					nowYear++;
				}else{
					nowMonth++;
				}
				var urlMonth = nowMonth + 1;
				if(parseInt(urlMonth) < 10){
					urlMonth = "0" + urlMonth;
				}
				getElm("monthyear").innerHTML = "&nbsp;";
				getElm("innerdays").innerHTML = "";
				getElm("innerdays").className = "loading";
				xHRObject = sendXHR('GET',theURL + "?month=" + urlMonth + "&year=" + nowYear ,GetData);
			}
		}else if(what == "previous"){
			if(nowMonth - 1 < 0){
				nowMonth = 11;
				nowYear--;
			}else{
				nowMonth--;
			}
			var urlMonth = nowMonth + 1;
			if(parseInt(urlMonth) < 10){
				urlMonth = "0" + urlMonth;
			}
			getElm("monthyear").innerHTML = "&nbsp;";
			getElm("innerdays").innerHTML = "";
			getElm("innerdays").className = "loading";
			xHRObject = sendXHR('GET',theURL + "?month=" + urlMonth + "&year=" + nowYear ,GetData);
		}
	}
}

function ShowCalendar()
{
	var initHeight = parseInt(getElm("revuearchivesin").style.height);
	if(getElm("revuearchives").style.height == "0px"){
		SlideShow("revuearchives",initHeight);
		if(!isNaN(parseInt(currentMonth)) && !isNaN(parseInt(currentYear))){
			getElm("innerdays").className = "";			
		}else{
			getElm("innerdays").className = "loading";
			fillCalendar("");
		}
	}else{
		SlideHideMe("revuearchives");
	}
}