var Calendrier_Collectif_Objet_ID;
var weekDay_Collectif = 0;

function calTitle_Collectif(d) {
 	var yy=d.getFullYear(), mm=yxMonths[d.getMonth()];
	var s;

	MoisEnCours_Int = parseInt(d.getFullYear().toString() + get2Digits(d.getMonth() + 1).toString());
	Aujourdhui = new Date();
	Aujourdhui_Int = parseInt(Aujourdhui.getFullYear().toString() + get2Digits(Aujourdhui.getMonth() + 1).toString());
	Collectif_Last_Week_Int = parseInt(Collectif_Last_Week.getFullYear().toString() + get2Digits(Collectif_Last_Week.getMonth() + 1).toString());
	Collectif_First_Week_Int = parseInt(Collectif_First_Week.getFullYear().toString() + get2Digits(Collectif_First_Week.getMonth() + 1).toString());

	s = '<table width="250" border="0" cellpadding="0" cellspacing="0" class="Calendrier_Top">';
    s += '	<tr>';
    s += '		<td align="center">';
	

	//Bloque les mois passés
	if (MoisEnCours_Int > Aujourdhui_Int)
	{
		if (MoisEnCours_Int > Collectif_First_Week_Int)
		{
			s += '<a href="#" onClick="prepMonth_Collectif(' +d.getMonth()+ ');return false;">&#171;</a>';
		}
	}
	
	s += ' ' + mm + ' ' + yy + ' ';
	
	if (MoisEnCours_Int < Collectif_Last_Week_Int)
	{
		s += '<a href="#" onClick="nextMonth_Collectif(' +d.getMonth()+ ');return false;">&#187;</a>';
	}
	
    s += '	</td></tr>';
    s += '</table>';


    s += '<table width="250" border="0" cellpadding="0" cellspacing="0" class="Calendrier_Jour_Libelle">';
    s += '	<tr>';
	for (var i=weekDay_Collectif; i<7; i++) {
		s += '<td align="center">' + dayDisplay(i) + '</td>';
	}	

	for (var i=0; i<weekDay_Collectif; i++) {
		s += '<td align="center">' + dayDisplay(i) + '</td>';
	}		
    s += '	</tr>';
    s += '</table>';
	
	return s;
}

function IsExclude_Date_Collectif(Annee, Mois, Jour)
{
	Semaine = new Date(Annee, Mois, Jour, 0, 0, 0, 0);
	Semaine_Int = parseInt(Annee.toString() + get2Digits(Mois + 1).toString() + get2Digits(Jour).toString());

	Aujourdhui = new Date();
	Aujourdhui = new Date(Aujourdhui.getFullYear(), Aujourdhui.getMonth(), Aujourdhui.getDate(), 0, 0, 0, 0);

	if (Semaine < Aujourdhui) //Date inférieur à la semaine en cours
	{
		return true;	
	}
	
	if (Semaine.getDate() == 1) //Le dimanche n'est pas le premier jour du calendrier
	{
		if (firstDay(Semaine) != 0)
		{
			return true;	
		}
	}
	
	if (Collectif_Last_Week < Semaine) //Les cours sont fermés
	{
		return true;	
	}

	
	if (Collectif_First_Week > Semaine) //Les cours sont pas encore ouverts
	{
		return true;	
	}

	for (var i = 0; i < Collectif_Exclude_Weeks.length; i++) //Enlève les dates exclus
	{
    	if (parseInt(Collectif_Exclude_Weeks[i]) == Semaine_Int) 
		{
			return true;
		}
  	}
	
	
	return false;
}

function calBody_Collectif(d,day) {
	var s="", dayCount=1, fd=firstDay(d), ld=lastDay(d);
	var Exclu = false;
	
	if (weekDay_Collectif > 0 && fd == 0) {
		fd = 7;
	}


  for (var i=0; i<6; i++) {
	if (dayCount<=ld)
	{
		Exclu = IsExclude_Date_Collectif (d.getFullYear(), d.getMonth(), dayCount);
		if (Exclu == true)
		{
			s += '<table width="250" border="0" cellpadding="0" cellspacing="0" class="Calendrier_Contenu">';
			s += '  <tr>';
		} else {
			s += '<table width="250" border="0" cellpadding="0" cellspacing="0" class="Calendrier_Contenu">';
			s += '  <tr onMouseOver="this.style.backgroundColor=\'#f27f0a\';" onMouseOut="this.style.backgroundColor=\'\';" onClick="pickDate_Collectif('+dayCount+');">';
		}
	
		for (var j=weekDay_Collectif; j<weekDay_Collectif+7; j++) {
		  if (i*7+j<fd || dayCount>ld) {
			s += '    <td align="center">&nbsp;</td>';		
		  } else {
			if (j < 6)
			{
				if (Exclu == true)
				{
					s += '    <td align="center" style="color:#c9c5af;">' + (dayCount++) + '</td>';
				} else {
					s += '    <td align="center">' + (dayCount++) + '</td>';
				}				
			} else {
				s += '    <td align="center" style="color:#c9c5af;">' + (dayCount++) + '</td>';
			}
			
		  }
		}
		s += '  </tr>';
		s += '</table>';
	}
  }
  return s;
}

function moveYear_Collectif(dy) {
  cY+=dy;
  var nd=new Date(cY,cM,1);
  changeCal_Collectif(nd);
}

function prepMonth_Collectif(m) {
  cM=m-1;
  if (cM<0) { cM=11; cY--; }
  var nd=new Date(cY,cM,1);
  changeCal_Collectif(nd);
}

function nextMonth_Collectif(m) {
  cM=m+1;
  if (cM>11) { cM=0; cY++;}
  var nd=new Date(cY,cM,1);
  changeCal_Collectif(nd);
}

function changeCal_Collectif(d) {
	var dd = 0;
  	var calendar=calTitle_Collectif(d)+calBody_Collectif(d,dd);
	document.getElementById(Calendrier_Collectif_Objet_ID).innerHTML = calendar;
}

function showCal_Collectif(Container_ID) {
	Calendrier_Collectif_Objet_ID = Container_ID;
	var d=new Date();
	var calRE = getFormat();

	if (d < Collectif_First_Week)
	{
		d = Collectif_First_Week;
	}
	
	cY=d.getFullYear();
	cM=d.getMonth();
	dd=d.getDate();
	
	var calendar=calTitle_Collectif(d)+calBody_Collectif(d,dd);
	
	document.getElementById(Calendrier_Collectif_Objet_ID).innerHTML = calendar;
}

function pickDate_Collectif(d) {

	var date=calFormat;
	date = date.replace(/yyyy/i, cY);
	date = date.replace(/mm/i, get2Digits(cM+1));
	date = date.replace(/MON/, yxMonths[cM].substring(0,3).toUpperCase());
	date = date.replace(/Mon/i, yxMonths[cM].substring(0,3));
	date = date.replace(/dd/i, get2Digits(d));
	date = date.replace(/DAY/, getDayName(cY,cM,d).toUpperCase());
	date = date.replace(/day/i, getDayName(cY,cM,d));
	
	curDate=date;

	Under_Popup('panier_cours_collectif_ajouter.aspx?sport_id=' + curSport_ID + '&cours_age_id=' + curCours_Age_ID + '&cours_type_id=' + curCours_Type_ID + '&cours_collectif_niveau_id=' + curCours_Collectif_Niveau_ID + '&cours_date=' + curDate,510,590);
}
