var xhr;

/* Routines */
 
function writediv(texte,queldiv)
  {
    document.getElementById(queldiv).innerHTML = texte;
    queldiv = "";
    texte = "";
  }

function getXhr(){
        if(window.XMLHttpRequest)
           xhr = new XMLHttpRequest();
        else if(window.ActiveXObject){
           try {
                      xhr = new ActiveXObject("Msxml2.XMLHTTP");
                  } catch (e) {
                      xhr = new ActiveXObject("Microsoft.XMLHTTP");
                  }
        }
        else {
           alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...vous n'aurez donc pas accès aux mises à jour, installez un navigateur plus récent (Mozilla Firefox, Internet Explorer 5 [...])");
           xhr = false;
        } 
      }

function Chargement(DivChargement)
{
         writediv("<center><img src=\"./images/chargement.gif\"><br /> Chargement ...</center>", DivChargement);
}
function ChargementFailed(DivChargement)
{
         writediv("Chargement échoué actualise la carte, si cela perssiste, contact un administrateur via le forum...", DivChargement);
}
//
//Traitement des données en AJAX
//

/*
************************************
     Messagerie du jeu :)
************************************
*/
function MessagerieMessageEcrire(id,pseudo)
         {  
         Chargement("affichage_messagerie");
         getXhr();
         xhr.onreadystatechange = function()
         { 
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         writediv(reponse, "affichage_messagerie");
                     }
                     else
                     {
                         ChargementFailed("affichage_messagerie");
                         return;
                     }
                 }
         }
         xhr.open("POST","messagerie_ecrire.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("afficher=1&id="+id+"&pseudo="+pseudo);
         }
function MessagerieMessageEnvoyer()
         {     
         var A = document.getElementById("A").value;
         var sujet = document.getElementById("sujet").value;
         var texte = document.getElementById("texte").value;
         A = A.replace("&","");
         sujet = sujet.replace("&","");
         texte = texte.replace("&","");
         Chargement("affichage_messagerie");
         getXhr();
         xhr.onreadystatechange = function()
         {  
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         writediv(reponse, "affichage_messagerie");
                     }
                     else
                     {
                         ChargementFailed("affichage_messagerie");
                         return;
                     }
                 }
         }
         xhr.open("POST","messagerie_envoyer.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("envoyer=1&A="+A+"&sujet="+sujet+"&texte="+texte);
         }
function MessagerieMessageLire(id,type)
         {  
         Chargement("affichage_messagerie");
         getXhr();
         xhr.onreadystatechange = function()
         { 
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         writediv(reponse, "affichage_messagerie");
                     }
                     else
                     {
                         ChargementFailed("affichage_messagerie");
                         return;
                     }
                 }
         }            
         xhr.open("POST","messagerie_lire.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("id="+id+"&type="+type);
         }
function MessagerieMessageArchiver(id,type)
         { 
         Chargement("affichage_messagerie");
         getXhr();
         xhr.onreadystatechange = function()
         { 
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         writediv(reponse, "affichage_messagerie");
                     }
                     else
                     {
                         ChargementFailed("affichage_messagerie");
                         return;
                     }
                 }
         }            
         xhr.open("POST","messagerie_archiver.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("id="+id+"&type="+type);
         }
function MessagerieVider(type,boite)
         { 
         Chargement("affichage_messagerie");
         getXhr();
         xhr.onreadystatechange = function()
         {  
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         writediv(reponse, "affichage_messagerie");
                     }
                     else
                     {
                         ChargementFailed("affichage_messagerie");
                         return;
                     }
                 }
         }            
         xhr.open("POST","messagerie_vider.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("type="+type+"&boite="+boite);
         }
function MessagerieBoite(type)
         { 
         Chargement("affichage_messagerie");
         getXhr();
         xhr.onreadystatechange = function()
         {  
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         writediv(reponse, "affichage_messagerie");
                     }
                     else
                     {
                         ChargementFailed("affichage_messagerie");
                         return;
                     }
                 }
         }            
         xhr.open("POST","messagerie_boite.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("type="+type);
         }
function MessagerieMessageSupprimer(id,type)
         {  
         Chargement("affichage_messagerie");
         getXhr();
         xhr.onreadystatechange = function()
         {  
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         writediv(reponse, "affichage_messagerie");
                     }
                     else
                     {
                         ChargementFailed("affichage_messagerie");
                         return;
                     }
                 }
         }            
         xhr.open("POST","messagerie_supprimer.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("id="+id+"&type="+type);
         }

/*
   Inventaire
*/
function InventaireAfficher()
         { 
         Chargement("affichage_inventaire");
         getXhr();
         xhr.onreadystatechange = function()
         { 
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         writediv(reponse, "affichage_inventaire");
                     }
                     else
                     {
                         ChargementFailed("affichage_inventaire");
                         return;
                     }
                 }
         }            
         xhr.open("POST","inventaire_afficher.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("afficher=1");
         }
 function InventaireAction(id_objet,type_action)
         {
         if(type_action == 1 || type_action == 2)
             {
             var nb_objet = document.getElementById("nb_objet"+id_objet).value;
             }
         else
             {
             var nb_objet = 1;
             }  
         Chargement("affichage_inventaire_action");
         getXhr();
         xhr.onreadystatechange = function()
         { 
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         //writediv(reponse, "affichage_inventaire_action");
                         reponse = reponse.split('--|SpLiT|--');
                         writediv(reponse[0],'affichage_inventaire_action');
                         writediv(reponse[2],'menu_joueur');
                         writediv(reponse[1],'affichage_inventaire');
                     }
                     else
                     {
                         ChargementFailed("affichage_inventaire_action");
                     }
                     window.location.replace('#affichage_inventaire_action');
                 }
         }
         xhr.open("POST","inventaire_action.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("id="+id_objet+"&type_action="+type_action+"&nb_objet="+nb_objet);
         }


/********************************
/*Actualisation du menu et autres actions diverses
********************************/


function ActionsExec(action,id,type_attaque,type_next)
         {
         var id_sort = "";
         var donner_Z = "";
		 var id_pnj_habitant = "";
		 var id_objet_quete = "";
		 
         if(action == "lancer_sort")
         {
             type_attaque = document.getElementById('type_attaque').value;
             id_sort = document.getElementById('id_sort').value;
         }
		 /*if(action == "lire" && type_attaque != "")
         {
             affichageFenetrePancarte(id);
         }*/
		 
		 if((action == "discuter" || action == "lire") && type_attaque != "")
         {
             id_pnj_habitant = id;
         }
		 if(action == "takeObjetQuete" && type_attaque != "")
         {
             id_objet_quete = id;
         }
         if(action == "donner" && type_attaque != "")
         {
             id_sort = document.getElementById('donner_nombre_'+type_attaque).value;
         }
         if(type_next == 2 && action == "donner")
         {
             donner_Z = document.getElementById('donner_Z').value;
         }
         else
         {
             donner_Z = 0;
         }
         if(action == "actualiser_carte")
         {
             var div_used = "affichage_carte";
         }
         else
         {
             if(action == "deplacer")
             {
                 var div_used = "affichage_carte";
             }
             else
             {
                 var div_used = "affichage_actions";
             }
         }
         Chargement(div_used);
         getXhr();
         xhr.onreadystatechange = function()
         { 
             if(xhr.readyState == 4 )
                 {
                     if(xhr.status == 200)
                     {
                         var reponse = xhr.responseText;
                         if((action==''))
                         {
                             reponse = reponse.split('--|SpLiT|--');
                             writediv(reponse[0],'affichage_carte');   
                             writediv(reponse[1],'affichage_actions');
                         }
                         else
                         {
                             if(action == "deplacer")
                             { 
                                   reponse = reponse.split('--|SpLiT|--');
                                   writediv(reponse[0],'affichage_deplacer');  
                                   writediv(reponse[1],'affichage_carte');
                                   writediv(reponse[2],'menu_joueur');

                             }  
                             else if((action =="ramasser_db") || (action == "ramasser"))
                             {      
                                   reponse = reponse.split('--|SpLiT|--');
                                   writediv(reponse[0],'affichage_actions');
                                   writediv(reponse[1],'affichage_carte');
                                   writediv(reponse[2],'menu_joueur');
                             }
                             else if((action == "lancer_sort" && id_sort == "")|| (action == "actualiser_carte") || (action == "actualiser_actions"))
                             {          
                                   writediv(reponse, div_used);

                             }
                             else
                             {      
                                   reponse = reponse.split('--|SpLiT|--');
                                   writediv(reponse[0],'affichage_actions');
                                   writediv(reponse[1],'menu_joueur');
                             }
                         }
                     }
                     else
                     {
                         ChargementFailed(div_used);
                         return;
                     }
                 }
         }
         xhr.open("POST","actions_exec.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("envoie=1&action="+action+"&id="+id+"&id_sort="+id_sort+"&type_attaque="+type_attaque+"&type_envoie="+type_next+"&donner_Z="+donner_Z+"&habitant="+id_pnj_habitant+"&objetquete="+id_objet_quete);
         }

function ExecOthersActions(action,id,choix)
{
         Chargement("affichage_actions");
         getXhr();
         xhr.onreadystatechange = function()
         {
             if(xhr.readyState == 4 )
             {
                 if(xhr.status == 200)
                 {
                     var reponse = xhr.responseText;
                     reponse = reponse.split('--|SpLiT|--');
                     writediv(reponse[0],'affichage_actions');
                     writediv(reponse[1],'menu_joueur');
                 }
                 else
                 {
                     ChargementFailed("affichage_actions");
                     return;
                 }
             }
         }
         xhr.open("POST","action_others.php",true);
         xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
         xhr.send("afficher=1&action="+action+"&id="+id+"&choix="+choix);
}

/*
Fonction de vérif de saisie

*/

function verifVideLoginConnex()
{
	if(document.cadreConnexion.login.value == "")
	{
		document.cadreConnexion.login.focus();
		alert("Le login n\'a pas été saisi.");
		stop;
		
	}
	else
	{
		document.cadreConnexion.submit();
	}
}
