var displayMonth;
var displayYear;

function navigate(direction)
{
	if(direction > 0)
	{
		if(displayMonth == 12)
		{
			displayMonth = 1;
			displayYear++;
		}
		else
			displayMonth++;
	}
	else
	{
		if(displayMonth == 1)
		{
			displayMonth = 12;
			displayYear--;
		}
		else
			displayMonth--;
	}
	
	document.getElementById("eventsCalendar").innerHTML = buildCal(displayMonth, displayYear);
	
}

function buildCal(currentMonth, currentYears){

	displayMonth = currentMonth;
	displayYear = currentYears;

	
	var month=['JANVIER','FEVRIER','MARS','AVRIL','MAI','JUIN','JUILLET','AOUT','SEPTEMBRE','OCTOBRE','NOVEMBRE','DECEMBRE'];
	var dim=[31,0,31,30,31,30,31,31,30,31,30,31];
	
	var nDate = new Date(currentYears, currentMonth-1, 1); //DD replaced line to fix date bug when current day is 31st
	nDate.od = nDate.getDay()+1; //DD replaced line to fix date bug when current day is 31st

	//Creer un nouvelle date 
	var today = new Date()
	
	//V&eacute;rifier quel jour on est sur le calendrier
	var scan = ( currentYears == today.getFullYear() && currentMonth == today.getMonth() + 1) ? today.getDate() : 0
	
	
	//V&eacute;rifie si l'ann&eacute; est bisextile et ajoute le bon nombre de jour au mois de f&eacute;vrier
	dim[1] = ( ((nDate.getFullYear() % 100 != 0) && (nDate.getFullYear() % 4 == 0) ) || (nDate.getFullYear() % 400 == 0)) ? 29 : 28;
	
	//D&eacute;but du calendrier (table)
	var calendar = '<div class="mainCalendar">' +
						'<table class="mainTableau" cols="7" cellspacing="0px">' +
							'<tr align="center" >';
	
	//l'ent&ecirc;te du calendrier avec le mois
	calendar += 				'<td colspan="7" align="center" class="month">'+ 
									'<table border="0" cellpadding="0" cellspacing="0"><tr>' + 
										'<td><a onclick="navigate(-1)" class="pointer"><img src="/images/nsi/flechegauche.gif"  /></a></td>' +
										'<td width="100%" valign="bottom" align="center">' + month[currentMonth-1] + " " + currentYears + '</td>' + 
										'<td><a onclick="navigate(1)" class="pointer"><img src="/images/nsi/flechedroite.gif" /></a></td>' +
									'</tr></table>' + 
								'</td>'+
							'</tr>'+
							'<tr align="center">';
	
	//Affiche la premi&egrave;re lettre des jours de la semaine
	for(day = 0; day < 7; day++)
		calendar += 			'<td class="daysofweek" >' + 
									"DLMMJVS".substr(day,1) + 
								'</td>';
		
	calendar += 			'</tr>' +
							'<tr align="center">';

	//Trace un tableau de 42 cellules avec les jours du mois a la bonne place
	for(iterator = 1; iterator <= 42; iterator++){
		var validDay = ( (iterator - nDate.od >= 0) && (iterator - nDate.od < dim[currentMonth-1]) ) ? iterator - nDate.od + 1 : '&nbsp;';
		
		var dayIsToday = false;
		dayIsToday = (currentMonth == (today.getMonth() + 1) && currentYears == today.getFullYear() && validDay == today.getDate())
		/*{
			validDay = '<span>' + validDay + '</span>' //DD added
			calendar += '<td class="today">' + validDay + '</td>';
		}*/


			var found = false;
			for (var i = 0; i < activityArray.length; i++){
				//alert(validDay);
				if (displayYear == activityArray[i][0].getFullYear() && (displayMonth - 1) == activityArray[i][0].getMonth() && validDay == activityArray[i][0].getDate()) {
					if(dayIsToday)
						validDay = '<a id="d' + validDay + '" class="activitestoday" href="' + activityArray[i][1] + '">' + validDay + '</a>' //DD added
					else
						validDay = '<a id="d' + validDay + '" class="activites" href="' + activityArray[i][1] + '">' + validDay + '</a>' //DD added
						
					found=true;
					break;
				}
			}
			
			//if(validDay == 5 || validDay == 13 || validDay == 14 || validDay == 15 || validDay == 16 || validDay == 17 || validDay == 18 || validDay == 19 || validDay == 20) //DD added
				//validDay = '<span class="activites">' + validDay + '</span>' //DD added
			if (!found  && !dayIsToday){
				if(validDay == scan )
					validDay = '<span id="d' + validDay + '" class="color69F">' + validDay + '</span>' //DD added
				calendar += '<td class="days">' + validDay + '</td>';
			}
			else
			{
				if (dayIsToday)
					calendar += '<td class="today">' + validDay + '</td>';
				else
					calendar += '<td class="days">' + validDay + '</td>';
			}
			
		
			
		
		
		if( ((iterator) % 7 == 0) && (iterator < 36))
			calendar += '</tr><tr align="center">';
	}
return calendar += '</tr></table></div>';
}

function selectDates(arr, m, y)
{
	if(m == displayMonth && y == displayYear)
	{
		for(var i = 0; i < arr.length; i++){
			if (document.getElementById("d" + arr[i]) != null)
				document.getElementById("d" + arr[i]).style.textDecoration = "underline";
		}
	}
}

function unselectDates(arr, m, y)
{
	if(m == displayMonth && y == displayYear)
	{
		for(var i = 0; i < arr.length; i++){
			if (document.getElementById("d" + arr[i]) != null)
				document.getElementById("d" + arr[i]).style.textDecoration = "none";
		}
	}
}




