//buildCalendrier 
function buildCalendrier(mois, annee) {
	mois--;
	if (annee<100) annee+=2000;
	var d=new Date(annee,mois,1);
	var nomsMois=new Array('janvier','février','mars','avril','mai','juin','juillet','août','septembre','octobre','novembre','décembre');
	var jours=new Array('lundi','mardi','mercredi','jeudi','vendredi','samedi','dimanche');
	var nbJours=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
	if (annee%4==0)nbJours[1]++;

	var premierJour=d.getDay()-1;
	if (premierJour<0) premierJour=6;
	var nbLignes=(nbJours[mois]-(7-premierJour))/7

	nbj=0;
	var t='<table border="0" cellspacing="0" cellpadding="0">';
	t+=addLigneMois(mois+1,annee);
	t+=addLigneJours();
	while (nbj<nbJours[mois]) {
		t+='<tr class="calJours">';
		for (var i=0; i<7 ; i++ )
		{
			if (nbj==0 && i<premierJour) {
				t+=ajouteCaseVide();
				continue;
			}
			if (nbj>=nbJours[mois]) {
				t+=ajouteCaseVide();
				continue;
			}
			nbj++;
			t+=ajouteCase (nbj,mois+1,annee-2000);
	//		ajouteCase (i);
		}
		t+='</tr>';
	}
	t+='</table>';

	inThatDivPut('calendrier',t);
}

function clickPrev () {
	ceMois--;
	if (ceMois<1) {
		ceMois=12;
		cetteAnnee--;
	}
	startCalendar();
}

function clickNext () {
	ceMois++;
	
	if (ceMois>12)
	{
		ceMois=1;
		cetteAnnee++;
	}
	startCalendar();
}

function addLigneMois (mois,an) {
	var nomsMois=new Array('janvier','février','mars','avril','mai','juin','juillet','août','septembre','octobre','novembre','décembre');

	var t='';
	var deb=debutSite.split('/');
	var debutMois=deb[0];
	var debutAn=deb[1];
	if ( !(an<debutAn || (mois<=debutMois && an==debutAn)) )
		t+='<tr class="calLigneHaut"><td class="calBoutonPrev" onClick="clickPrev();" ><a href="#"><span>&lt;</span></a></td>';
	else 
		t+='<tr class="calLigneHaut"><td class="calBoutonPrev"><p><span>&lt;</span></p></td>';
	t+='<td colspan="5" class="calMonth">'+nomsMois[mois-1]+' '+an+'</td>';
	t+='<td class="calBoutonNext"  onClick="clickNext();" ><a href="#"><span>&gt;</span></a></td></tr>';
	return t;
}

function addLigneJours () {
		var t='';
	    t+='<tr class="calLettresJours"><td>L</td><td>M</td><td>M</td>';
		t+='<td>J</td><td>V</td><td>S</td><td>D</td></tr>';
		return t;
}

function ajouteCaseVide () {
	return '<td></td>';
}

function ajouteCase (j,m,a,listeFilms) {
	var t='';
	var f=Jour.isThereAMovie(Number(j),Number(m),Number(a) );
	var da=j+'/'+m+'/'+a;
	var dToday=aujourdhui.split('/');
	var bToday=false;
	if (Number(j)==Number(dToday[0]) && Number(m)==Number(dToday[1]) && Number(a)==Number(dToday[2]))
		bToday=true;

	var dJourDemande=jourDemande.split('/');
	var bJourDemande=false;
	if (Number(j)==Number(dJourDemande[0]) && Number(m)==Number(dJourDemande[1]) && Number(a)==Number(dJourDemande[2]))
		bJourDemande=true;

	if (f==null) t+='<td><p>'+j+'</p></td>';
	else {
//		t+='<td><a href="ficheFilm.php?jour='+da+'"';
		t+='<td><a href="javascript:jour('+"'"+da+"'"+');"';
		if (bJourDemande && !bToday) t+=' class="passe" '; 
		if (bJourDemande && bToday) t+=' class="passe_today" ';
		if (f.passe && !bToday) t+=' class="passe" ';
		if (f.passe && bToday) t+=' class="passe_today" ';
		if (!f.passe && bToday) t+=' class="today" ';
		t+='>'+j+'</a></td>';
	}
	return t;
}




function inThatDivPut(divId,texte) {
  if (document.getElementById) document.getElementById(divId).innerHTML = texte;
  else document.all[divId].innerHTML = texte;
 }


//classe Jour
function Jour (j,m,a,passe) {
	this.j=Number(j);
	this.m=Number(m);
	this.a=Number(a);
	this.passe=passe;
	if (this.a>2000) this.a=this.a-2000;
	Jour.liste.push(this);
}


Jour.prototype.toString =function () {

	var t=this.j+'/'+this.m+'/'+this.a;
	return t;
}

Jour.liste=new Array();
Jour.addJour=function (j,m,a,passe) {
	j=Number(j);
	m=Number(m);
	a=Number(a);
	var cj=Jour.findJour(j,m,a);
	if (cj!=null) {
		if (passe) cj.passe=true;
		return cj;
	}
	cj=new Jour (j,m,a,passe);
	return cj;
}

Jour.findJour=function (j,m,a) {
	for (var i=0; i<Jour.liste.length; i++ )
	{
		var cj=Jour.liste[i];
		if (cj.j==j && cj.m==m && cj.a==a) return cj;
	}
	return null;
}

Jour.isThereAMovie=function (j,m,a) {
	return Jour.findJour(j,m,a)
}



///////////////////////////


function startCalendar () {
	this.ajax=new FastAjax('ficheCalendrier.php',this);

	this.ajax.addWatchBalise('D');


	this.ajax.send("mois="+ceMois+"&an="+cetteAnnee+'&idFilm='+idFilm+'&idSalle='+idSalle);

	this.onBalise_d =function (xm) {
		var v=xm.firstChild.nodeValue;
		dList=String(v).split(',');

		for (var i=0; i<dList.length; i++)
		{
			var d=dList[i].split('_');
			var ceJour=d[0];
			var passe=d[1];
//			var exCeJour=ceJour.split('/');
			var cj=Jour.addJour(d[0],ceMois,cetteAnnee,passe=='passe');
		}

		buildCalendrier(ceMois,cetteAnnee);


	}
}