// Requête Javascript Asynchrone (AJAX)
// ///////////////////////////////////////////////////
function RequeteServeur(href, param, fonctionRetour, method, asynchro, format)
{
   var xhr_object = null;  
   method=(method)?method.toLowerCase():"get";
   if(!format) format="text";
   
   if(window.XMLHttpRequest) xhr_object=new XMLHttpRequest();
   else if(window.ActiveXObject)
   {
	  xhr_object=new ActiveXObject("Msxml2.XMLHTTP");	
	  if(!xhr_object) xhr_object= new ActiveXObject("Microsoft.XMLHTTP");
   }   
   if(!xhr_object) { alert("e-site est incompatible avec votre navigateur !");  return; }
   
   if(method=="get") { href+="?"+param; param=null; }

   try
   {	   
	  xhr_object.onreadystatechange=function()
	  {
		  if(xhr_object.readyState==4 && fonctionRetour && xhr_object.status==200)
		      fonctionRetour( (format=="xml")?xhr_object.responseXML:xhr_object.responseText );
	  }
	  xhr_object.open(method.toUpperCase(), href, asynchro);	  
	  if(method=="post") xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

	  xhr_object.send(param);
	   
   } catch(errv) { alert("Erreur de connection au serveur : "+errv.message); }
}


// RECUPERATION DU FORMULAIRE DE DEMANDES DE LOGEMENT
/////////////////////////////////////////////////////////////////////////////////
function demande(Form, type) {
	if(!type) {
		var verif=true;
		var date=document.getElementById('date_now').value;
		var msg='Veuillez remplir les champs obligatoires.';
		
		var nbElm=document.forms[Form].elements.length;
		var elm=document.forms[Form].elements;
		
		for(i=0; i<nbElm; i++) {
			if(elm[i].className=="obligatoire") {
				if(elm[i].value=='') verif=false;
			}
		}
		
		if(document.getElementById('certification').checked) {
			if(confirm("En cliquant sur ce bouton vous certifiez sur l'honneur que les informations envoyées sont correctes.")) verif=true;
			else verif=false;
		} else { alert("Vous n'avez pas cocher la case \"Je certifie sincères et exacts les renseignements déclarés ci-avant\""); verif=false; }
		
		if(verif==true) {
			return true;
		} else { alert(msg); return false; }
		
	} else return true;
}


function changeStatut (rollcache, etat, type, cible) {
		// Envoie de la requete
		var etat=document.getElementById('chg_statut').options[document.getElementById('chg_statut').selectedIndex].value ;
		
		RequeteServeur('fonctions.php', "rollcache=" + rollcache + "&statut=" + etat + "&type=" + type, 
					   function(retour) { 
					   		if(retour!='erreur') if(cible!='') window.location.replace(cible);
							else window.location.reload();
						}, 'get', true);
}


function changeEtape(etape) {
	var cadre = document.getElementById('listeEtapes');
	var elm = cadre.getElementsByTagName('li');
	for(var i=0; i<elm.length; i++) {
		if(i!=etape) { elm[i].className="etape"+i+"_off"; document.getElementById('etape'+i).className="invisible"; }
		else         { elm[i].className="etape"+i; document.getElementById('etape'+i).className="visible"; }
	}
}

function DelDemande(id, etat) {
		// Envoie de la requete
		var string="id="+id+"&etat="+etat+"&type=6";
		var cadre;
		
		if(confirm("Etes-vous sûr de vouloir supprimer ce dossier ?")) {
			RequeteServeur('fonctions.php', string, 
						   function(retour) {
								switch(etat) {
									case '0':
										cadre='cadreNew';
										break;
									
									case '1':
										cadre='cadreAttente';
										break;
									
									case '2':
										cadre='cadreAcceptees';
										break;
									
									case '3':
										cadre='cadreRefus';
								}
								
								document.getElementById(cadre).innerHTML=retour;
								
							}, 'get', true);
		}
}