// JavaScript Document
window.onload=testerNavigateur;
//-----------------------------
function testerNavigateur() {   
	objetXHR = creationXHR();
	if(objetXHR==null) {
		document.getElementById("button").disabled= true;
		var erreurNavigateur="Erreur Navigateur : Création d'objet XHR impossible";
		remplacerContenu("info", erreurNavigateur);
	    document.getElementById("info").style.visibility="visible";
	}
	document.getElementById("nom1").onclick=function(){ajouteNom("Defrance","Jean-Marie")};
	document.getElementById("nom2").onclick=function(){ajouteNom("Dupond","Alain")};
}
function ajouteNom(nom,prenom) {  
     var elementNom=document.createElement("nom");
	 var texteNom=document.createTextNode(nom);
     elementNom.appendChild(texteNom);
	 //création de l'élement Prénom avec son noeud texte
	 var elementPrenom=document.createElement("prenom");
	 var textePrenom=document.createTextNode(prenom);
	 elementPrenom.appendChild(textePrenom);
	 //création du noeud racine joueur
	 elementJoueur=document.createElement("joueur");
	 elementJoueur.appendChild(elementNom);
	 elementJoueur.appendChild(elementPrenom);
}
//---------------------------------------
function jouer() {   
	 /*-----------------------------Config et envoi de la requete ASYNCHRONE : */
	 //création d'un objet XHR multi-navigateurs
	 objetXHR = creationXHR();
	 //construction des données des parametres en XML
	 var objetSerializer=new XMLSerializer();  	
	 var parametresXml = objetSerializer.serializeToString(elementJoueur);
	 //----------------------------------------------------------
	 //Config. objet XHR
     objetXHR.open("post","gainAleatoire.php", true); 
	 objetXHR.onreadystatechange = actualiserPage;//désignation de la fonction de rappel
	 objetXHR.setRequestHeader("Content-Type","text/xml");
	 //gestion du bouton et du chargeur
	 document.getElementById("button").disabled= true;
	 document.getElementById("charge").style.visibility="visible";
     objetXHR.send(parametresXml);//envoi de la requete
	 /*---------------------------------------- */
  }
  function actualiserPage() {
	if (objetXHR.readyState == 4) {//test si le résultat est disponible
	 if (objetXHR.status == 200) {
	   var nouveauResultat = objetXHR.responseText.split(":");//recup du résulat > tableau 
	   //actualisation du résultat
	   remplacerContenu("resultat", decodeURI(nouveauResultat[1]));
	   //actualisation du nom
	   remplacerContenu("gagnant", decodeURI(nouveauResultat[0]));
	   //affiche la zone info
	   document.getElementById("info").style.visibility="visible";
	   //gestion du bouton et du chargeur
	   document.getElementById("button").disabled= false;
	   document.getElementById("charge").style.visibility="hidden";
	 }else{
	   //message d'erreur serveur
	   var erreurServeur="Erreur serveur : "+objetXHR.status+" – "+ objetXHR.statusText;
	   remplacerContenu("info", erreurServeur);
	   document.getElementById("info").style.visibility="visible";
	   //gestion du bouton et du chargeur
	   document.getElementById("button").disabled= false;
	   document.getElementById("charge").style.visibility="hidden";
	   //annule la requete en cours
	   objetXHR.abort();
	   objetXHR=null;
	   }
	 }
  }
