function AJAXInteraction(url, callback) {
	var requete = init();
	requete.onreadystatechange = processRequest;
	
	function init() {
		if (window.XMLHttpRequest) {
			return new XMLHttpRequest();
		} else if (window.ActiveXObject) {
     		return new ActiveXObject("Microsoft.XMLHTTP");
   		}
 	}
 
 function processRequest () {
   if (requete.readyState == 4) {
     if (requete.status == 200) {
       if (callback) callback(requete.responseXML);
     }
   }
 }

 this.doGet = function() {
   requete.open("GET", url, true);
   requete.send(null);
 }
 
 this.doPost = function(body) {
   requete.open("POST", url, true);
   requete.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
   requete.send(body);
 }
}

function encodeURL( url ) {
	url = url.replace(/é/g,"%");
	return url;
}

/**=================================================================================*/
/**  getRequest() : Permet de recuperer un objet XMLHttpRequest en fonction        =*/
/**                 en fonction du navigateur.                                     =*/
/**=================================================================================*/
function getRequest(){
	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
}

/**=================================================================================*/
/**  fonction de recuperation des statistiques                                     =*/
/**=================================================================================*/
function calculePerformance( ficheFonds ) {

	var dateDebut = document.getElementById("Debutd").value;
	var dateFin = document.getElementById("Find").value;
	
	var url = "/noam/fichesfonds/calculeperf.do?Id="+ficheFonds+"&Dd="+dateDebut+"&Df="+dateFin;
	
	var ai = new AJAXInteraction(url, 
		function(reponse) { 
        	var listePerf = reponse.getElementsByTagName("performance");
        	
        	var listeMessage = reponse.getElementsByTagName("message");
            
            var i=0;
            var s = "";
            for( i=0;i<listePerf.length;i++ ) {
            	s = s +"<strong>Performance : </strong>"+listePerf[i].getAttribute("valeur")+" <span>"+listePerf[i].getAttribute("intervalle")+"</span>";
            }
            
            i=0;
            var message = "";
            for( i=0;i<listeMessage.length;i++ ) {
            	message = message +listeMessage[i].getAttribute("valeur");
            }
            
            if( s != null && s != '' ) {
            	document.getElementById("message").innerHTML = '';
            	document.getElementById("message").style.display = "none";
            	
            	document.getElementById("resultat").innerHTML = s;
            	$("#resultat").fadeIn("slow");
            } 
            
            if( message != null && message != '' ) {
            	document.getElementById("resultat").innerHTML = '';
            	document.getElementById("resultat").style.display = "none";
            	
            	document.getElementById("message").innerHTML = message;
            	$("#message").fadeIn("slow");
            }
         });
	ai.doGet();
}