/**
 * Tools.js : regroupe les scripts Javascript utilisés par les pages du site
 * www.matrix-editeur.com
 * @date 19-08-2006 
 */

/* ------------------------------------------------------------------------------------------------- */
/**
* Affichage hure temps réel
*/
function doClock() {
  today   = new Date();
  hours   = today.getHours();
  minutes = today.getMinutes();
  seconds = today.getSeconds();
  timeValue = hours;

  // Les deux prochaines conditions ne servent que pour l'affichage.
  // Si le nombre de minute est inférieur à 10, alors on rajoute un 0 devant...

  timeValue += ((minutes < 10) ? ":0" : ":") + minutes;
  timeValue += ((seconds < 10) ? ":0" : ":") + seconds;
  document.getElementById("time").innerHTML = today.getDate() +'/'+ (today.getMonth()+1) +'/'+ today.getFullYear() + '&nbsp;&nbsp;&nbsp;&nbsp;'+ timeValue;
  timerRunning = true;
}
timerID = setInterval(doClock,1000);

/*  ------------------------------------------------------------------------------------------------- */
/**
* Cache / montre la balise dont l'id est passée en paramètre.
*/
function show_and_hide(id){

	if(document.getElementById(id).style.display != 'none'){
		document.getElementById(id).style.display = 'none';
	}
	else{
		document.getElementById(id).style.display = '';
	}
}
/*  ------------------------------------------------------------------------------------------------- */
/* Coche / décoche les checkbox d'une liste. */
function check(flag,count){
	if(flag == 1) val = true;
	else val = false;
	
	for(i=0;i<count;i+=2){
		document.getElementById('check'+i).checked = val;
	}
}

function check(flag,count){
	if(flag == 1){
		for(i=0;i<count;i++){
			document.getElementById('check'+i).checked = true;
			document.getElementById('row'+i).className='lineselected';
		}
	}
	else{
		for(i=0;i<count;i++){
			document.getElementById('check'+i).checked = false;
			if(i%2 == 0) document.getElementById('row'+i).className='lineodd';
			else document.getElementById('row'+i).className='lineeven';
		}
	}
}
/*  ------------------------------------------------------------------------------------------------- */
/* "allume" un article et "éteint les autres" : met en valeur un article de la page en changeant la classe du div qui le contient*/
function light_article(lightid){

	/*	var elts = document.getElementsByName('lightable');
		 on parcours l'ensemble du tableau avec une boucle
		for(var i = 0; i < elts.length; i++) {
			if(i%2 == 0) elts[i].className='oddcase';
			else elts[i].className='evencase';
	    }
		document.getElementById(id).className='specialcase';
	*/
	var elts = document.getElementById('centre').getElementsByTagName('div');
	var id;
	/*  on parcours l'ensemble du tableau avec une boucle */
	for(var i = 0,c=0; i < elts.length; i++){
		/*alert(elts[i].getAttribute("name"));
		  alert("Nombre d'éléments restant : "+(i));*/
		id=elts[i].getAttribute("id");

		if(id && ( elts[i].getAttribute("id").substr(0,8) == "article_") ){
			if(c%2 == 0) elts[i].className='oddcase';
			else elts[i].className='evencase';
			c++;
		}
    }
	document.getElementById(lightid).className='specialcase';
}

/*  ------------------------------------------------------------------------------------------------- */
function isValidMail(adresse){
	var place = adresse.indexOf("@",1);
	var point = adresse.indexOf(".",place+1);
	if ((place > -1)&&(adresse.length >2)&&(point > 1))
		return(true);

	return(false);
}

/* Check si le formulaire a été correctement rempli */
/*function isSavable(form){
	var msg = "";		
	if(document.getElementById('typeProj').selectIndex == 0){
		msg = "Vous devez spécifier un type de projet.";
	}
	if(document.getElementById('nom').value == ""){
		msg = "Le nom du contact est obligatoire.";
	}
	if(!isValidMail(document.getElementById('mail').value)){
		msg = "L\'adresse e-mail que vous avez saisie n\'est pas valide.";
	}
	if(msg != ""){
	  	document.getElementById('formerror').style.display = '';
       	document.getElementById('formerror').innerHTML = msg;
	   	return false;
	}
	return true;
}*/

/* Requête ajax sur la BD */
function ajaxRequest(param){
	getXhr();
	/* On défini ce qu'on va faire quand on aura la réponse */
	xhr.onreadystatechange = function(){
		if(xhr.readyState == 4 && xhr.status == 200){		
			/*var docXML= cleanXML(xhr.responseXML.documentElement);			
			document.getElementById(docXML.firstChild.data).innerHTML = docXML.lastChild.data;*/
			//alert(xhr.responseText);
			var doc = xhr.responseText.split("[matrixseparator]");
			document.getElementById(doc[0]).innerHTML = doc[1];
		}
	}
	xhr.open("POST",'../tools/ajaxHandler.php5',true);
  	xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded; charset=ISO-8859-1');
	xhr.send(param);
}
