/*
 * Function getXhr()
 * -----------------
 * Retourne un objet de type XMLHttpRequest
 * correspondant au navigateur utilisé
 */
function getXhr()
{
	var xhr = null; 
	if(window.XMLHttpRequest) // Firefox et autres
  		xhr = new XMLHttpRequest(); 
	
	else if(window.ActiveXObject){ // Internet Explorer 
   		try {
              	xhr = new ActiveXObject("Msxml2.XMLHTTP");
          	} catch (e) {
              	xhr = new ActiveXObject("Microsoft.XMLHTTP");
          	}
	}
	
	else { // XMLHttpRequest non supporté par le navigateur 
   		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
   		xhr = false; 
	}
	
	return xhr;
}

/*
 * Function getFile(fichier, protocole)
 * ------------------------------------
 * Retourne un objet XMLHttpRequest.open en contrant le probleme du cache Internet Explorer
 * La fonction peut utiliser différents protocoles : GET ou POST
 */
function getFile(fichier, protocole, asyncr)
{
	if(arguments.length == 3)
		async = asyncr;
	else
		async = true;
		
	// Récupération XMLHttpRequest selon navigateur
	if(!(xhr = getXhr()))
		return false;
		
	//********* Pour contrer le cache IE *******/
	d = new Date();
	
	reg =new RegExp("[?]");
	if(!fichier.match(reg))
		fichier = fichier + '?' + d.getTime();
	else
		fichier = fichier + '&' + d.getTime();
	//*******************************************/
		
	xhr.open(protocole , fichier, async);
	
	return xhr;
}


//Fonction d'utilisation d'ajax en get
function Ajax_GetInfos(URL, fct_traitement, sync) {

	var xhr = getXhr();
	if (!(xhr)) return;
	
	// On défini ce qu'on va faire quand on aura la réponse
	xhr.onreadystatechange = function(){
		// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
		if(xhr.readyState == 4 && xhr.status == 200){
			var result = xhr.responseText;
			if (fct_traitement) {
				eval(fct_traitement+'("'+escape(result)+'")');
			} else {
				return result;
			}
			
		}
	}

	//********* Pour contrer le cache IE *******/
	d = new Date();
	
	reg =new RegExp("[?]");
	if(!URL.match(reg))
		URL = URL + '?' + d.getTime();
	else
		URL = URL + '&' + d.getTime();
	//*******************************************/
	
	xhr.open("get",URL,sync);
	xhr.send(null);
}