//*************************************************************************************************
// Auteur Jonathan Vallée
// iyez76@hotmail.com
// Calendrier standard et calendrier limité
// 22 septembre 2004
//**************************************************************************************************
		
		//On défini les mois de l'année dans un tableau
		var mn=['Janvier','F&eacute;vrier','Mars','Avril','Mai','Juin','Juillet','Ao&ucirc;t','Septembre','Octobre','Novembre','D&eacute;cembre'];
		//On défini le nombre de jour dans chaque mois, 0 pour le mois de février
		var dim=[31,0,31,30,31,30,31,31,30,31,30,31];
		
		//On défini la variable avec la date du jour au format AAAA/MM/JJ		
		var dateDuJour = formatDate();
		//On défini l'heure du jour au format HH:MM:SS
		var heureDuJour = formatHeure();
		
		//Permet de donner la date complète au lien href de chaque chaque chiffre du calendrier
		var complet = "";
		//Zone ou le calendrier va apparaître
		var zone_Aff_Mois = "" ; //Voir dans votre page d'affichage
		
		//Style défini dans la feuille de style, css/calendrier.css
		var cM = "tableau";  //Tableau
		var c_heure_entete = "heure";
		var c_mois_milieu = "moisMilieu"; //Mois Style
		var c_mois_droite = "moisCelluleDroite"; //Mois Style
		var c_mois_gauche = "moisCelluleGauche"; //Mois Style
		var c_semaine = "jourSemaine"; // Jour de la semaine
		var c_jour = "jour"; // Jour
		var c_jour_Inact = "jour_Innactif"; //Jour innactifs à l'affichage
		var brdr = 1; //Epasseur des bordures du tableau
		
		//Largeur du tableau contenant le calendrier
		var width = 200;//Largeur du calendrier
		var height = 25;//Hauteur du tableau mois
		//On défini la largeur de la cellule qui contient le nom des mois 
		var lar = 110;//largeur du milieur du tableau mois
		var lar_IMG_prec = 45; //largeur de la cellule des boutons de droite
		var lar_IMG_suiv = 45; //largeur de la cellule des boutons de gauche
	
		//Chemin ou se situe les images
		var pathIMG = "/images/maville/";
		
		//Nom des images boutons du calendrier
		var IMG_annee_prec = "annee_precedente_s2.png"; //Nom de l'image année précèdente
		var IMG_annee_suiv = "annee_suivante_s2.png";
		var IMG_mois_prec = "mois_precedent_s2.png";
		var IMG_mois_suiv = "mois_suivant_s2.png";
		
		//Largeur et longueur des images boutons du calendrier
		var largeur_IMG = 20;
		var longueur_IMG = 20;
		
		//Compteur pour rafraichir les images à l'affichage
		var count = 5;
		
//Fin de la configuration du calendrier
//--------------------------------------------------------------------------------------------------------
//********************************************************************************************************
	
//???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
//DÉBUT DES FONCTIONS SERVANT À L'APPEL DU CALENDRIER
//???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

function preloader() 
{
     // counter     
	 var i = 0;
     // create object    
	  imageObj = new Image();
     // set image list    
	  images = new Array();     
	  images[0]=pathIMG+IMG_annee_prec;     
	  images[1]=pathIMG+IMG_annee_suiv;    
	  images[2]=pathIMG+IMG_mois_prec;     
	  images[3]=pathIMG+IMG_mois_suiv;
     // start preloading     
	 for(i=0; i<=3; i++)      
	 {          
	 	imageObj.src=images[i];  
		//alert(images[i]);
	 }

} 

//-------------------------------------------------------------------------------
//FONCTION DE MISE À JOUR DU CALENDRIER
//CELLE-CI EST LE CORPS PRINCIPAL DU PROGRAMME
//********************************************************************************
//CORPS DU PROGRAMME PERMETTANT DE DÉTERMINER LEQUELS DES CALENDRIERS SERA APPELÉS
//
//type --> envoyer soit "standard" pour un calendrier ordinaire
//		   envoyer soit "limite" pour un calendrier dont la date sélectionner ne peuxt être plus grande que celle d'aujourd'hui
//
//*******************************************************************************


function miseAjourCalendrier( leMois, annee, obj, action, zoneAff, type ){
	
		
	var aujourdhui = new Date(); //On défini la date du jour
	//On reçoit la valeur ou l'on affiche notre calendrier
	var zone_Aff_Mois = zoneAff; 
	
	//ON REMPLI NOTRE CHAMPS RETOURMOIS ET RETOURANNEE SI LE CALENDRIER NE CONTIENT RIEN
	//ALORS ON A LE MOIS EN COURS AVEC L'ANNÉE EN COURS QUI S'AFFICHE SI AUCUNE VALEUR N'EST ENVOYÉE
	if ( leMois == 0 || leMois == "" || annee== 0 || annee == "" ) {
		var retourMois = aujourdhui.getMonth()+1;
		var retourAnnee = aujourdhui.getFullYear();
	}
	else
		{
			var retourMois = leMois; 
			var retourAnnee = annee;
		}
	//FIN COMMENTAIRES;

	//Si l'action est nulle , celle-ci est égal à "Aucune"
	if ( action == "" || action == "A" || action == null )
		var actionM = "Aucune";
	else
		var actionM = action; //On égale actionM à la valeur de action	

	//On Détermine quel type de calendrier sera afficher dans la zone défini
	if ( type == 'limite' ) //Calendrier limité, on bloque l'accès jusqu'à la date du jour
		{var calendarstr=constructionCalendrierLimite( retourMois, retourAnnee, obj, actionM, zone_Aff_Mois);}
	else if ( type == 'standard' ) //Calendrier standard, aucune contrainte
		{var calendarstr=constructionCalendrier( retourMois, retourAnnee, obj, actionM, zone_Aff_Mois);}
	else
		{var calendarstr=constructionCalendrier( retourMois, retourAnnee, obj, actionM, zone_Aff_Mois);} //Si rien n'est reçu, par default on appel le calendrier standard
	
	
	//On affiche le calendrier dans la bonne zone

	document.getElementById( zone_Aff_Mois ).innerHTML=calendarstr;//zone_Aff_Mois est égal à la zone d'affichage du calendrier
	//exemple : <tr><td><div id="zone_Affichage"></td><tr>
	//Dans notre fonction l'on passe le champ "zone_Affichage"
	//alert(calendarstr);
	//reloadImage();//On rafraichit nos images

}

//FIN DE LA FONCTION PERMETTANT DE RENDRE NOTRE CALENDRIER DYNAMIQUE
//----------------------------------------------------------------------------
//****************************************************************************

//FONTION # 1
//--------------------------------------------------------------------------
//**********************************************************************
//FONCTION QUI APPEL UN CALENDRIER STANDARD
//
// m = mois
// y = année
// cM, cH, c_semaine, cD, brdr -> Style défini dans la feuille de style
// nom_Obj = nom du text area, objet formulaire de type text
// action = soit "Aucune", "anneeSuivante", "moisSuivant", "anneePrecedente", "moisPrecedent"
//**********************************************************************
function constructionCalendrier(m, y, nom_Obj, action, zone_Aff ){
	
	preloader();	
	var oD = new Date(y, m-1, 1); 
	oD.od=oD.getDay()+1; //On ajoute 1 lorsque les mois contiennent 31 jours
	
	var aujourdhui = new Date(); //On défini la date du jour
	var aujourd=(y==aujourdhui.getFullYear() && m==aujourdhui.getMonth()+1)? aujourdhui.getDate() : 0; // = Date du jour
	var jAct = aujourdhui.getDate();//Jour actuel
	var anneeCourante = aujourdhui.getFullYear(); //Année actuelle
	var moisCourant = aujourdhui.getMonth()+1; //mois Actuelle
	var mPrec = m-1; //Variable dynamique contenant la valeur du mois précèdent
	var mSuiv = m+1; //Variable dynamique contenant la valeur du mois suivant
	var aPrec = y-1; //Variable dynamique contenant la valeur de l'année précèdente
	var aSuiv = y+1; //Variable dynamique contenant la valeur de l'année suivante
	var mAct = m; //Variable statique donnant la valeur du mois Actuel
	var aAct = y; //Variable statique donnant la valeur de l'année actuelle
	var jAct = aujourdhui.getDate(); //Le jour ou nous sommes aujourd'huit
	
	//Si l'action est null alors ...
	if ( action == null ) {
		mPrec = m-1;
		mSuiv = m+1;
		aPrec = y-1;
		aSuiv = y+1;
		mAct = m;
		aAct = y;
	}
	else if ( (mAct == 1 && action == "Aucune") ) {
		mPrec = 12;
		mSuiv = m+1;
		aPrec = y-1;
		aSuiv = y+1;
		mAct = m;
		aAct = y;
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aAct + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aPrec + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
	}
	else if ( (mAct == 1 && action == "moisSuivant") || ( mAct == 1 && action == "anneeSuivante" ) ) {
		mPrec = 12;
		mSuiv = m+1;
		aPrec = y-1;
		aSuiv = y+1;
		mAct = m;
		aAct = y;
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aAct + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aPrec + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
	}
	else if ( ( mAct == 1 && action == "moisPrecedent" ) || ( mAct == 1 && action == "anneePrecedente" ) ) {
		mPrec = 12;
		mSuiv = m+1;
		aPrec = y-1;
		aSuiv = y+1;
		mAct = m;
		aAct = y;
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aAct + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aPrec + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
	}
	else if ( action == "moisPrecedent"  && mAct != 12 && mAct != 1 ) {
		mPrec = m - 1;
		mSuiv = m + 1;
		aSuiv = y + 1;
		aPrec = y - 1;
		mAct = m;
		aAct = y;
	}	
	else if ( (mAct == 12 && action == "Aucune") ) {
		aPrec = y - 1;
		aSuiv = y + 1; 
		mSuiv = 1;
		mPrec = m - 1; 
		mAct = m;
		aAct = y;
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aSuiv + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aAct + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
	}
	else if ( ( mAct == 12 && action == "moisSuivant" ) || ( mAct == 12 && action == "anneeSuivante" ) ) {
		aPrec = y - 1;
		aSuiv = y + 1; 
		mSuiv = 1;
		mPrec = m - 1; 
		mAct = m;
		aAct = y+1;
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aSuiv + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aAct + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\"  alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
	} 
	else if ( (mAct == 12 && action == "moisPrecedent" ) || ( mAct == 12 && action == "anneePrecedente" ) ) {
		aPrec = y - 1;
		aSuiv = y + 1; 
		mSuiv = 1;
		mPrec = m - 1; 
		mAct = m;
		aAct = y;
		//alert(pathIMG + IMG_mois_suiv );
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aSuiv + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aAct + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\"  alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
		
	} 
	else if ( action == "moisSuivant" && mAct != 12 && mAct != 1 ) {
		aPrec = y - 1;
		aSuiv = y + 1;  
		mSuiv = m + 1;
		mPrec = m - 1;
		aAct = y;
		mAct = m;
	} 	
	
	//On vérifie pour les années bisectiles
	dim[1]=(((oD.getFullYear()%100!=0)&&(oD.getFullYear()%4==0))||(oD.getFullYear()%400==0))?29:28;
	
	//On créer la table pour afficher l'entete soir le mois courant et la date ainsi que les indicateurs de changements de mois et d'annee ( images )
	 var t='<table width="' + width + '"  cellpadding="0" border="'+brdr+'" cellspacing="0" bordercolor="#000000"><tr align="center" height="' + height + '">';

		if ( ( m != 1 && m != 12 ) ) {
			var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aAct + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
			var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aAct + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '"  name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
			var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
			var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
		}

		//On génère les liens qui aiderons a changer de mois et d'année
		t+='<td height="' + height + '" width="' + lar_IMG_prec + '" align="center" class="'+c_mois_gauche+'">' + annee_Precedente + mois_Precedent + '</td><td  align="center" width="' + lar + '" class="'+c_mois_milieu+'"><b>' + mn[m-1]+' - '+y + '</b></td><td  width="' + lar_IMG_suiv + '" align="center" class="'+c_mois_droite+'">' +  mois_Suivant + annee_Suivante +'</td></tr></table>';
		
		//TABLE SERVANT A AFFICHER LES JOURS DE LA SEMAINE
		t+='<table width="' + width + '" cols="7" cellpadding="0" border="'+brdr+'"  bordercolor="#000000" cellspacing="0">'	
		t+= '<tr align="center">';
	
	//On rempli notre tableau
	for(s=0;s<7;s++) {
		//ON AFFICHE L'ENTETE DES JOURS DE LA SEMAINE
		t+='<td class="'+c_semaine+'">'+"DLMMJVS".substr(s,1)+'</td>'; //Jour de la semaine, AFFICHAGE
	}
		t+='</tr>'; //ON FERME LA TABLE DE L'AFFICHAGE DES JOURS DE LA SEMAINE
		
		//TR AFFICHANT LES JOURS DU MOIS DE 0 À 31
		t+='<tr align="center">';
	
	for(i=1;i<=42;i++){
		var x=((i-oD.od>=0)&&(i-oD.od<dim[m-1]))? i-oD.od+1 : '&nbsp;';
		
		//Si le jour dans la boucle est égal a aujourd'hui alors on le met en rouge
		if ( parseInt(x) ) {
					//class="'+c_jour+'"
					if (x == jAct && m == moisCourant && y == anneeCourante  ) {
						t+='<td class="'+c_jour+'"><a href=javascript:setText("' + formatDate(x,m,y) + '"' + ',' + '"' + nom_Obj + '"' + ','  + '"' + zone_Aff + '"' + ') ><span class="aujourdhui">'+x+'</span></a></td>';
					}
					else//On stock dans la variable t les journées du mois en cours
						{t+='<td class="'+c_jour+'"><a href=javascript:setText("' + formatDate(x,m,y) + '"' + ',' + '"' + nom_Obj + '"' + ','  + '"' + zone_Aff + '"' + ') >'+x+'</a></td>';}
	
			}
		else
			//Si x est différent d'un chiffre alors on affiche rien
			{t+='<td class="'+c_jour+'">'+x+'</a></td>';}
		
		if(((i)%7==0)&&(i<36))
			t+='</tr><tr align="center">';
	}
	
	t+='<tr><td align="center" colspan="6" class="' + c_heure_entete + '">' + dateDuJour + ' - '  + heureDuJour + '</td><td colspan="1" class="' + c_heure_entete + '" align="center" ><a href=javascript:fermerCalendrier("' + zone_Aff + '") ><font color="FFFF00">X</font></td></tr>';
	
	return t+='</tr></table><br>';
}
	
//FIN FONCTION #1, CALENDRIER STANDARD SANS LIMITE
//-------------------------------------------------------------------------------------------------------
//********************************************************************************************************

//???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

//FONTION #2, CALENDRIER AVEC LIMITE, BLOQUE À LA DATE DU JOUR
//---------------------------------------------------------------------------
//**********************************************************************
	//FONCTION QUI APPEL UN CALENDRIER QUI ARRETE À LA DATE DU JOUR
	//ON NE PEUT CHOISIR UNE DATE PLUS GRANDE QUE CELLE D'AUJOURD'HUI
	//
	//POUR L'APPELER IL SUFFIT D'AJOUTER UN PARAMÈTRE À NOTRE FONCTION SOIT :
	//
	//miseAjourCalendrier( leMois, annee, obj, action, zoneAff, type )
	//
	//ON REMPLACE "type" PAR "limite" pour appeler ce calendrier
	//
	//**********************************************************************
function constructionCalendrierLimite(m, y, nom_Obj, action, zone_Aff ){

	preloader();
	var oD = new Date(y, m-1, 1); 
	oD.od=oD.getDay()+1; //On ajoute lorsque les mois contiennent 31 jours
	
	var aujourdhui = new Date(); //On défini la date du jour
	var aujourd=(y==aujourdhui.getFullYear() && m==aujourdhui.getMonth()+1)? aujourdhui.getDate() : 0; //DD added
	var jAct = aujourdhui.getDate();//Jour actuel
	var anneeCourante = aujourdhui.getFullYear(); //Année actuelle
	var moisCourant = aujourdhui.getMonth()+1; //mois Actuelle
	var mAct = m;
	var aAct = y;
	var mPrec = m - 1;
	var mSuiv = m + 1;
	var aPrec = y - 1;
	var aSuiv = y + 1;
	var limite = false;
	
	//alert(action + " y = " + y + " m = " + m + " Aact = " + aAct + " mAct = " + mAct );
	//alert ( "Action : " + action + " Annee y : " + y + " aAct : " + aAct + " m : " + m + " mAct : " + mAct );
	if ( (mAct == 1 && action == "Aucune") ) {
		aPrec = y - 1;
		mPrec = 12;
		mSuiv = m;
		aSuiv = anneeCourante;
		mAct = m;
		aAct = y;
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aAct + ',' + '"' + nom_Obj + '"' + ',' +  '"Aucune"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aPrec + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '"  name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"Aucune"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';

		var limite = true;
	}
	else if ( ( action == "Aucune"  || action == "moisSuivant" || action == "anneeSuivante" ) && ( y >= anneeCourante && m >= moisCourant )  ) {
		//alert("Aucune action")
		aPrec = y - 1;
		mPrec = m-1;
		mSuiv = m;
		aSuiv = anneeCourante;
		mAct = m;
		aAct = y;
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aAct + ',' + '"' + nom_Obj + '"' + ',' +  '"Aucune"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aAct + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '"  name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"Aucune"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';

		var limite = true;
	}
	else if ( (mAct == 1 && action == "moisSuivant") || ( mAct == 1 && action == "anneeSuivante" )  ) {
		
		mPrec = 12;
		mSuiv = m+1;
		aPrec = y-1;
		if ( y >= anneeCourante ) { aSuiv = anneeCourante; } else { aSuiv = y+1 ;}
		mAct = m;
		aAct = y;
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aAct + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aAct + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
	}
	else if ( ( mAct == 1 && action == "moisPrecedent" ) || ( mAct == 1 && action == "anneePrecedente" ) ) {
			
		mPrec = 12;
		mSuiv = m+1;
		aPrec = y-1;
		if ( y >= anneeCourante ) { aSuiv = anneeCourante; } else { aSuiv = y+1 ;}
		mAct = m;
		aAct = y;
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aAct + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aPrec + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
	}
	else if ( ( mAct == 12 && action == "moisSuivant" ) || ( mAct == 12 && action == "anneeSuivante" )  ) {
		
		var aSuiv_spec = "";
		aPrec = y - 1;
		mSuiv = 1;
		mPrec = m - 1; 
		mAct = m;
		aAct = y;
		
		if ( y >= anneeCourante ) {
			aSuiv = anneeCourante; aSuiv_spec = anneeCourante; 
		} 
		else 
			{ aSuiv = y+1 ;aSuiv_spec = y+1 ;} 
		
		//On vérifie si l'année qui suit est plus grand ou égal que l'année en cours
		//On vérifie également si le mois actuelle est plus grand que le mois courant
		//Ainsi on bloque le changement d'année, l'utilisateur ne peut incrémenter l'année car la date serait plus grande que celle d'aujourd'hui
		if (  aSuiv >= anneeCourante && m > moisCourant  )
			{ aSuiv_spec = aAct;}
		
		//On remplit nos variables qui serviront à l'affichage de nos boutons du calendrier
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aSuiv + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aAct + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv_spec + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
		//Fin du remplissage
	} 
	else if ( (mAct == 12 && action == "moisPrecedent" ) || ( mAct == 12 && action == "anneePrecedente" ) ) {
		
		var aSuiv_spec = "";
		aPrec = y - 1;
		mSuiv = 1;
		mPrec = m - 1; 
		mAct = m;
		aAct = y;
		
		if ( y >= anneeCourante ) { 
			aSuiv = anneeCourante;aSuiv_spec = anneeCourante; 
		} 
		else 
			{ aSuiv = y+1 ;aSuiv_spec = anneeCourante;} 
		
		//On vérifie si l'année qui suit est plus grand ou égal que l'année en cours
		//On vérifie également si le mois actuelle est plus grand que le mois courant
		//Ainsi on bloque le changement d'année, l'utilisateur ne peut incrémenter l'année car la date serait plus grande que celle d'aujourd'hui
		if (  aSuiv >= anneeCourante && m > moisCourant  )
			{ aSuiv_spec = aAct;}
			
		//On remplit nos variables qui serviront à l'affichage de nos boutons du calendrier
		var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aSuiv + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
		var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aAct + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '"  name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
		var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv_spec + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
		var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
		//Fin du remplissage
	} 
	else if ( ( action == "moisSuivant"  || action == "anneeSuivante" ) && mAct != 12 && mAct != 1 ) {
		aPrec = y - 1;
		if ( ( y + 1 ) == anneeCourante && m > moisCourant  ) 
			{ aSuiv = y; } 
		else if ( ( y + 1 ) == anneeCourante && m <= moisCourant  ) 
			{ aSuiv = anneeCourante; } 
		else 
			 { aSuiv = y +1;}  
		mSuiv = m + 1;
		mPrec = m - 1;
		aAct = y;
		mAct = m;
	}  
	else if ( ( action == "moisPrecedent"  || action == "anneePrecedente" ) && mAct != 12 && mAct != 1 ) {
			
		mPrec = m - 1;
		mSuiv = m + 1;
		if ( ( y + 1 ) == anneeCourante && m > moisCourant  ) 
			{ aSuiv = y; } 
		else if ( ( y + 1 ) == anneeCourante && m <= moisCourant  ) 
			{ aSuiv = anneeCourante; } 
		else 
			 { aSuiv = y +1;}  
		aPrec = y - 1;
		mAct = m;
		aAct = y;
	}		

	//On vérifie pour les années bisectiles
	dim[1]=(((oD.getFullYear()%100!=0)&&(oD.getFullYear()%4==0))||(oD.getFullYear()%400==0))?29:28;
	
	//On créer la table pour afficher l'entete soir le mois courant et la date ainsi que les indicateurs de changements de mois et d'annee ( images )
	var t='<table width="' + width + '"  cellpadding="0" border="'+brdr+'" cellspacing="0" bordercolor="#000000"><tr align="center" >';

		if ( m != 1 && m != 12 && limite != true ) {
			var mois_Suivant = '<a href=javascript:miseAjourCalendrier(' + mSuiv + ',' + aAct + ',' + '"' + nom_Obj + '"' + ',' +  '"moisSuivant"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_mois_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisSuivant\" alt=\"Mois suivant\" ></a>';
			var mois_Precedent = '<a href=javascript:miseAjourCalendrier(' + mPrec + ',' + aAct + ',' + '"' + nom_Obj + '"' + ','  +  '"moisPrecedent"'  + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' +') ><img src="' + pathIMG + IMG_mois_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"moisPrecedent\" alt=\"Mois pr&eacute;c&eacute;dent\"></a>';
			var annee_Suivante = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aSuiv + ',' + '"' + nom_Obj + '"'+ ',' +  '"anneeSuivante"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' +') ><img src="' + pathIMG + IMG_annee_suiv + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneeSuivante\" alt=\"Ann&eacute;e suivante\"></a>';
			var annee_Precedente = '<a href=javascript:miseAjourCalendrier(' + mAct + ',' + aPrec + ',' + '"' + nom_Obj + '"'+ ',' + '"anneePrecedente"' + ',' + '"' + zone_Aff + '"' + ',' + '"limite"' + ') ><img src="' + pathIMG + IMG_annee_prec + '"  border=0  width="' + largeur_IMG + '" height="' + longueur_IMG + '" name=\"anneePrecedente\" alt=\"Ann&eacute;e pr&eacute;c&eacute;dente\"></a>';
		}
		
		t+='<td height="' + height + '" width="' + lar_IMG_prec + '" align="center" class="'+  c_mois_gauche +'">' + annee_Precedente + mois_Precedent + '</td><td  align="center" width="' + lar + '" class="'+ c_mois_milieu +'"><b>' + mn[m-1]+' - '+y + '</b></td><td  width="' + lar_IMG_suiv + '" align="center" class="'+  c_mois_droite +'">' +  mois_Suivant + annee_Suivante +'</td></tr></table>';
		
		//On créer une nouvelle table pour afficher les dates, l'heure du jour et la date du jour
		t+='<table width="' + width + '"  cols="7" cellpadding="0" border="'+brdr+'"  bordercolor="#000000" cellspacing="0"><tr align="center">'	
	
	for(s=0;s<7;s++)
		//Jour de la semaine, AFFICHAGE, ENTETE
		t+='<td class="'+c_semaine+'">'+"DLMMJVS".substr(s,1)+'</td>'; 
		
		t+='</tr><tr align="center" >';
		
		//On redonne la valeur par défaut a nos variable
		mAct = aujourdhui.getMonth()+1;
		aAct = aujourdhui.getFullYear();
		
		//On vérifie si le mois et l'année sélectionnées sont ceux dans laquelle nous sommes présentemetn
		if ( m == mAct && y == aAct ) 
			verif = true;
		else
			verif = false;

	//alert( 'm : ' + m + ' Mois courant : ' + moisCC + ' aAct : ' + anneeCC );
	for(i=1;i<=42;i++){
		var x=((i-oD.od>=0)&&(i-oD.od<dim[m-1]))? i-oD.od+1 : '&nbsp;';
		
		//On vérifie si notre variable x est un entier
		if ( parseInt(x)) {

			//alert(verif);
			//Si c'est le mois en cour, on bloque tous le jours jusqu'a la journée d'aujourd'hui
			if ( x <= jAct && verif == true ) {
					
					//On change la couleur d'affichage de la date du jour
					if (x == jAct && m == mAct && y == aAct ) {
						t+='<td class="'+c_jour+'"><a href=javascript:setText("' + formatDate(x,m,y) + '"' + ',' + '"' + nom_Obj + '"' + ','  + '"' + zone_Aff + '"' + ') ><span class="aujourdhui">'+x+'</span></a></td>';
					}
					else//On stock dans la variable t les journées du mois en cours
						{t+='<td class="'+c_jour+'"><a href=javascript:setText("' + formatDate(x,m,y) + '"' + ',' + '"' + nom_Obj + '"' + ','  + '"' + zone_Aff + '"' + ') >'+x+'</a></td>';}
			}
			if ( x > jAct && verif == true )
				{ t+='<td class="'+c_jour_Inact+'">'+x+'</td>'; }
				
			if ( verif == false ) {
				
				if (x == jAct && m == mAct && y == aAct ) {
					//alert( 'm : ' + m + ' Mois courant : ' + moisCC + ' Annee CC : ' + anneeCC + ' Jour CC : ' + jourCC );
					x='<span class="aujourdhui">'+x+'</span>'; //ID = aujourdhui attribué a la date du jour
				}
					
					t+='<td class="'+c_jour+'"><a href=javascript:setText("' + formatDate(x,m,y) + '"' + ',' + '"' + nom_Obj + '"' + ','  + '"' + zone_Aff + '"' + ') >'+x+'</a></td>';
				}		

		}	
		else
			//Si x est différent d'un chiffre alors on affiche rien
			{t+='<td class="'+c_jour+'">'+x+'</a></td>';}
		
		
		if(((i)%7==0)&&(i<36))
			t+='</tr><tr align="center">';
	}
	
	//On ajoute a notre variable t , la date du jour et l'heure du jour
	t+='<tr><td align="center" colspan="6" class="' + c_heure_entete + '">' + dateDuJour + ' - '  + heureDuJour + '</td><td colspan="1" class="' + c_heure_entete + '" align="center" ><a href=javascript:fermerCalendrier("' + zone_Aff + '") ><font color="FFFF00">X</font></td></tr>';
	
	return t+='</tr></table><br>';
}
	
//FIN DE LA FONCTION #2, CALENDRIER LIMITE
//--------------------------------------------------------------------------------------------------------------
//**************************************************************************************************************

//???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

//FONCTION QUI REMPLI LES OBJETS FORMULAIRES DES CHAMPS DATE
//-----------------------------------------------------------------------
//***********************************************************************
//Fonction qui rempli le textbox de la date
//ON LUI ENVOIT :
// variableDate --> date au format AAAA/JJ/MM
// nomObj --> nom de l'objet formulaire ex : document.maForm.monObjet
// Ensuite on envoit la zone ou le calendrier sera afficher ex : <div id="ici" > </div>, on envoit la string "ici"
//*****************************************************************************************************************
function setText ( variableDate, nom_Obj, zone ) {

	var form_no = 0;
	zone_Aff_Mois = zone;
	document.getElementsByName(nom_Obj)[form_no].value = variableDate;//On rempli le champ formulaire
	
	//A NOTER UNE PAGE CONTIENT PLUSIEUR FORM, ALORS ON DOIT DONNER LE BON NUMÉRO DE LA FORM DE 0 À XXXX
	
	document.getElementById(zone_Aff_Mois).innerHTML="";//On efface le contenu de la zone du calendrier
}
//FIN DE LA FONCTION DE REMPLISSAGE
//--------------------------------------------------------------------------------
//**********************************************************************************	

//???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
	
//Fonction permettant de fermer le calendrier si l'usager clique sur le X
function fermerCalendrier ( zone ) {

	document.getElementById(zone).innerHTML="";//On efface le contenu de la zone du calendrier, on l'égale à rien.
}
//FIN DE LA FONCTION QUI FERME LA ZONE OU EST AFFICHÉ LE CALENDRIER
//----------------------------------------------------------------------------

//???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????	

//----------------------------------------------------------------------------
//On format et retourne la date du jour au format AAAA/MM/JJ ET ON LA RETOURNE
//****************************************************************************
function formatDate (j, m, a) {
	
	var aujourdhui = new Date(); //On défini la date du jour
	
	if ( j != null ) 
		{ jourCC = j; } else { jourCC = aujourdhui.getDate(); }
	if ( m != null )
		{ moisCC = m; } else { moisCC = aujourdhui.getMonth()+1; }
	if ( a != null )
		{anneeCC = a;} else {anneeCC = aujourdhui.getFullYear();}
	
	//On reformatte la date du Jour !
	if ( moisCC > 0 && moisCC <= 9 )
		var moisAuj = "0" + moisCC;
	else
		var moisAuj = moisCC;
	
	if ( jourCC > 0 && jourCC <= 9 )	
		var jourAuj = "0" + jourCC;
	else
		var jourAuj = jourCC;

	var dateDuJour = anneeCC + "-" + moisAuj + "-" + jourAuj;

	return dateDuJour;
}

//FIN DE LA FONCTION QUI RETOURNE LA DATE DU JOUR FORMATTÉ
//--------------------------------------------------------

//???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
	
//--------------------------------------------------------
//On format l'heure du jour pour l'affichage
//Retourne l'heure en chaine de caractère au bon format
//********************************************************
function formatHeure() {
	
		var aujourdhui = new Date(); //On défini la date du jour
	
		if ( aujourdhui.getHours() > 0 && aujourdhui.getHours() <= 9 )
			var aujHeure = "0" + aujourdhui.getHours();
		else
			var aujHeure = aujourdhui.getHours();
		if ( aujourdhui.getMinutes() > 0 && aujourdhui.getMinutes() <=9  )
			var aujMin = "0" + aujourdhui.getMinutes();
		else
			var aujMin = aujourdhui.getMinutes();
			
		if ( aujourdhui.getSeconds() > 0 && aujourdhui.getSeconds() <= 9 )
			var aujSecondes = "0" + aujourdhui.getSeconds();
		else
			var aujSecondes = aujourdhui.getSeconds();
	
		var heureDuJour = aujHeure +  ':' + aujMin + ':' + aujSecondes;
	
		return heureDuJour;
}
//Fin de la fonction qui retourne l'heure


//PERMET DE RAFRAICHIR LES IMAGES À L'AFFICHAGE
function reloadImage(  ) {
	
	var tmp = "";
	var timeoutID = "";
    tmp = new Date(); 
   	tmp = "?"+tmp.getTime() ;
	
	count--; //ON décrémente 
	
	timeoutID = setTimeout("reloadImage()", 1) ;//On décolle notre compteur 1 de 1 secondes

	if (count>0){
		document.images.moisPrecedent.src = pathIMG + IMG_mois_prec + tmp;
		document.images.moisSuivant.src = pathIMG + IMG_mois_suiv + tmp;
		document.images.anneePrecedente.src = pathIMG + IMG_annee_prec + tmp;
		document.images.anneeSuivante.src = pathIMG + IMG_annee_suiv + tmp;
	}
	else { clearTimeout(timeoutID);  }//On ferme notre compteur
	
}

