/* auteur: MediaPro DX */
/* Date de création: 16/04/2004 */
function writediv(texte, nom_div)
{	// écrit le texte dans le div nom_div
     document.getElementById(nom_div).innerHTML = texte;
}


function DivStatus( nom, numero )
{	var divID = nom + numero;
	if ( document.getElementById && document.getElementById( divID ) ) // Pour les navigateurs récents
	{	Pdiv = document.getElementById( divID );
		PcH = true;
 	}
	else if ( document.all && document.all[ divID ] ) // Pour les veilles versions
	{	Pdiv = document.all[ divID ];
		PcH = true;
	}
	else if ( document.layers && document.layers[ divID ] ) // Pour les très veilles versions
	{	Pdiv = document.layers[ divID ];
		PcH = true;
	}
	else
	{	PcH = false;
	}
	if ( PcH )
	{	Pdiv.className = ( Pdiv.className == 'cachediv' ) ? 'montrediv' : 'cachediv';
	}
}
	
/*
Cache tous les divs ayant le même préfixe
ATTENTION: il est impératif que la numérotation des divs ne soit pas interrompue !
*/
function CacheTout( nom )
{		 var NumDiv = 1;
		 if ( document.getElementById ) // Pour les navigateurs récents
		{	while ( document.getElementById( nom + NumDiv) )
			{	SetDiv = document.getElementById( nom + NumDiv );
				if ( SetDiv && SetDiv.className != 'cachediv' )
				{	DivStatus( nom, NumDiv );
				}
				NumDiv++;
			}
		}
		else if ( document.all ) // Pour les veilles versions
		{	while ( document.all[ nom + NumDiv ] )
			{	SetDiv = document.all[ nom + NumDiv ];
				if ( SetDiv && SetDiv.className != 'cachediv' )
				{	DivStatus( nom, NumDiv );
				}
				NumDiv++;
			}
		}
		else if ( document.layers ) // Pour les très veilles versions
		{	while ( document.layers[ nom + NumDiv ] )
			{	SetDiv = document.layers[ nom + NumDiv ];
				if ( SetDiv && SetDiv.className != 'cachediv' )
				{	DivStatus( nom, NumDiv );
				}
				NumDiv++;
			}
		}
}

/*
Montre tous les divs ayant le même préfixe
ATTENTION: il est impératif que la numérotation des divs ne soit pas interrompue !
*/
function MontreTout( nom )
{	var NumDiv = 1;
	if ( document.getElementById ) // Pour les navigateurs récents
	{	while ( document.getElementById( nom + NumDiv) )
		{	SetDiv = document.getElementById( nom + NumDiv );
			if ( SetDiv && SetDiv.className != '' )
			{	DivStatus( nom, NumDiv );
			}
			NumDiv++;
		}
	}
	else if ( document.all ) // Pour les veilles versions
	{	while ( document.all[ nom + NumDiv ] )
		{	SetDiv = document.all[ nom + NumDiv ];
			if ( SetDiv && SetDiv.className != '' )
			{	DivStatus( nom, NumDiv );
			}
			NumDiv++;
		}
	}
	else if ( document.layers ) // Pour les très veilles versions
	{	while ( document.layers[ nom + NumDiv ] )
		{	SetDiv = document.layers[ nom + NumDiv ];
			if ( SetDiv && SetDiv.className != '' )
			{	DivStatus( nom, NumDiv );
			}
			NumDiv++;
		}
	}
}

function coloriage(saufId, couleur)
// colorie toutes les cases en blanc, sauf celle qu'on a cliqué
{	
	var nbTDs = document.body.getElementsByTagName("TD").length;
	var nomIDRdv = "";
	
	for (var i=0; i < nbTDs; i++)
	{	// on parcourt tous les TD
		TDRdv = document.body.getElementsByTagName("TD")[i];
		classIDRdv = TDRdv.className;
		nomIDRdv = TDRdv.id;
		// on colorie en "pris" le TD id="saufId"
		colorierTD = document.getElementById(saufId).style.background = couleur;
		if(nomIDRdv.substring(0,4)=="rdv_" && classIDRdv != "rdv_pris" && nomIDRdv != saufId)
		{	// on colorie toutes les autres en blanc
			TDRdv.style.background = "#FFF";
		}
	}
}

function coloriage_demijour (service, IdDemijour, couleur)
// colorie toutes les cases de la demi-journée IdDemijour choisie qui restent libres en vert
{	
	var nbTDs = document.getElementById("planning_demijour" + service).getElementsByTagName("TD").length;
	var nomIDRdv = "";
	// on parcourt tous les TDs du tableau planning_demijour
	for (var i=0; i < nbTDs; i++)
	{	
		TDRdv = document.getElementById("planning_demijour" + service).getElementsByTagName("TD")[i];
		nomIDRdv = TDRdv.id;
		var tab = nomIDRdv.split('_'); // on sépare les éléments qui composent l'ID du pavé
		classIDRdv = TDRdv.className;
		if (tab[0] == "rdv" && classIDRdv != "rdv_pris")
		{
			if (tab[2] == IdDemijour)	TDRdv.style.background = couleur;
			else TDRdv.style.background = "#FFF";
		}
	}
	// on colorie en blanc toutes les cases des autres tableaux du div planning_dj
	// ATTENTION: cela ne fonctionne que s 'il n'y a pas d'autres tableaux que les planning_demijour dans le div planning_dj
	tableaux = document.getElementById("planning_dj").getElementsByTagName("TABLE");
	for (var k=0; k < tableaux.length; k++)
	{	// on ne regarde que les tableaux dont l'ID commence par "planning_demijour" et n'est pas le tableau cliqué
		if (tableaux[k].id != "planning_demijour" + service)
		{
			nbTDs = tableaux[k].getElementsByTagName("TD").length;
			nomIDRdv = "";
			// on parcourt tous les TDs du tableau planning_demijour pour les colorier en blanc
			for (var i=0; i < nbTDs; i++)
			{	// on parcourt tous les TD du tableau trouvé
				TDRdv = tableaux[k].getElementsByTagName("TD")[i];
				classIDRdv = TDRdv.className;
				nomIDRdv = TDRdv.id;
				tab = nomIDRdv.split('_'); // on sépare les éléments qui composent l'ID du pavé
				if(tab[0] == "rdv" && classIDRdv != "rdv_pris")
				{	// on colorie en blanc
					TDRdv.style.background = "#FFF";
				}
			}
		}
	}
} // fin function

function coloreligne(Id)
// colorie la ligne ID et laisse les autres
{	
	var nbTRs = document.getElementById("annulation_form").getElementsByTagName("TR").length;
	
	for (var i=0; i < nbTRs; i++)
	{	// on parcourt tous les TR
		TRclient = document.getElementById("annulation_form").getElementsByTagName("TR")[i];
//		classTR = TRclient.className;
		nomTRclient = TRclient.id;
		if(nomTRclient.substring(0, 3) == 'rdv')
		{
			if(nomTRclient != Id)
			{	// on remet tous les autres d'origine
				TRclient.style.backgroundColor = "#FFF";
			}
			else
				// on colorie en sélectionné le TR id="Td"
				TRclient.style.backgroundColor = "#F00";
		}

	}
}


function look(idx)
{	// écrit l'heure du rdv et le service dans le input name="desc_rdv" du formulaire
	// ainsi que l'id du pavé cliqué dans le input name="pave" caché du formulaire (cette variable est ensuite transmie à resa.php)
	
	idx = idx.substring(4, idx.length); // supprime "rdv_" de l'id de la cellule id="rdv_X_hhHmm"
	// X est le numéro de l'horaire pioché dans la bdd. Il peut avoir plusieurs chiffres
	//service = services[parseInt(idx.substring (0, 1), 10)];

//	if (idx.length == 7) heure = idx.substring (2, idx.length); else	heure = idx.substring (2, 3);
	var tab = idx.split('_');
	var heure = tab[1]; // dans le id d'un pavé libre, l'heure est toujours le deuxième élément
	var texte;
	
	// si l'id du rdv est égal a 7 alors le rendez-vous est donc pris en demi journée sinon il est pris
	// a heure ou fixe ou c'est un rdv spécial
	if (heure == 1)
	{	// si l'heure est égal à 1 alors c'est le matin
		heure = "matin";
		texte = "Votre rendez-vous est le " + heure;
	}	
	else if (heure == 2)
	{	// si l'heure est égal à 2 alors c'est l'après-midi
		heure = "après-midi";
		texte = "Votre rendez-vous est l'" + heure;			   
	}	
	// sinon on affiche l'heure du rendez-vous
	else texte = "Votre rendez-vous est à " + heure;

	if (document.getElementById) // Pour les navigateurs récents
	{	desc_rdv = document.getElementById("desc_rdv");
		pave = document.getElementById("pave");
		PcH = true;
 	}
	else if (document.all) // Pour les veilles versions
	{	desc_rdv = document.all["desc_rdv"];
		pave = document.all["pave"];
		PcH = true;
	}
	else if (document.layers) // Pour les très veilles versions
	{	desc_rdv = document.layers["desc_rdv"];
		pave = document.layers["pave"];
		PcH = true;
	}
	else
	{	PcH = false;
	}
	
	if (PcH)
	{	desc_rdv.value = texte;
		pave.value = idx;
	}

}
function montreDiv(nom_div)
{	// affiche le div nom_div
	document.getElementById(nom_div).style.display = "block";
}

function cacheDiv(nom_div)
{	// fait disparaître le div nom_div
	document.getElementById(nom_div).style.display = "none";
}


// fonction qui créée un popup pour monter le commentaire du rdv
var windowComm;

function showComm(url)
{
	windowComm = window.open(url, 'Comm', 'toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=no,copyhistory=no,width=300,height=50');
	return false;
}

function attributs_fenetre(w,h)
{
	var p = 'oolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=no,copyhistory=no,width=' + w + ',height=' + h + ',left=' + (screen.width-w)/2 + ',top=' + (screen.height-h)/2;
	return (p);
}

function ouvre_fenetre(url, larg, haut)
{		
	f = window.open(url, 'comm', attributs_fenetre(larg, haut));
}


function ChangeUrl(formulaire)
{
	location.href = formulaire.date_possible.options[formulaire.date_possible.selectedIndex].value;
}

function ecrire_cookie(nom, valeur, expires) {
  document.cookie = nom + "=" + escape(valeur) + ((expires==null) ? "" : ("; expires="+expires.toGMTString()));
}

function arguments_cookie(offset){
  var endstr=document.cookie.indexOf (";", offset);
  if (endstr==-1) endstr=document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr)); 
}

function lire_cookie(nom) {
  var arg = nom + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen){
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
       return arguments_cookies(j);
    i = document.cookie.indexOf(" ",i) + 1;
    if (i == 0) break;
  }
  return null; 
}

