// 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); }
}

function Gui_Edit(etat, texte, type)
{
	var objDiv=document.getElementById('Gui_Properties');
	var objBG=document.getElementById('Gui_UpLoadBar_BG');
	var objText=document.getElementById('Gui_Properties_Text');
	
	if(!texte) texte="Enregistrement en cours...";
	
	objText.innerHTML=texte;
	
	var winW = 630, winH = 460;

	if (parseInt(navigator.appVersion)>3) {
		if (navigator.appName=="Netscape") {
			winW = window.innerWidth-16;
			winH = window.innerHeight;
		}
		if (navigator.appName.indexOf("Microsoft")!=-1) {
			winW = document.body.offsetWidth-20;
			winH = document.body.offsetHeight-20;
		}
	}
	
	if(type=='special') {
		objDiv.style.width='300px';
	}
	objBG.style.height=winH+'px';
	objBG.style.zIndex=99;
	objBG.style.visibility=etat;
	
	objDiv.style.zIndex=100;
	objDiv.style.visibility=etat;
}

// Vérification formulaire désabonnement newsletter
////////////////////////////////////////////////////////////////////////

function CheckForm(Form) {
	Gui_Edit('visible', 'Veuillez patienter...');
	
	if(document.forms[Form].elements['email'].value == " ") { 
		alert("Veuillez remplir le champ email."); return false;
		
	} else if(document.forms[Form].elements['email'].value.indexOf('@') == -1) {
		alert("Ce n'est pas une adresse électronique!"); return false;
		
	}
	
	if(document.forms[Form].elements['re-email'].value == " ") { 
		alert("Veuillez remplir le champ email."); return false;
		
	} else if(document.forms[Form].elements['re-email'].value.indexOf('@') == -1) {
		alert("Ce n'est pas une adresse électronique!"); return false;
		
	}
	
	if(document.forms[Form].elements['email'].value != document.forms[Form].elements['re-email'].value) {
		alert("Les adresses électroniques ne correspondent pas."); return false;
	}
	
	var email = document.forms[Form].elements['email'].value;
	
	switch(Form) {
		case 'formulaire_inscription':
			var type=1;
			break;
		
		case 'formulaire_desinscription':
			var type=2;
	}

	RequeteServeur("fonctions.php", "email=" + email + "&type=" + type, 
				   function(retour) {
				   		if(retour=="ok") {
								Gui_Edit('visible', 'Vous étes maintenant désinscrit de la newsletter de Villes au Carré.');
								setTimeout("Gui_Edit('hidden')", 2000);

						} else {
							Gui_Edit('visible', retour, 'special');
							setTimeout("Gui_Edit('hidden')", 4000);
						}
				   }, 
				   "get",  true);
}

function send() {
	var login = document.getElementById('login').value;
	var mdp = document.getElementById('mdp').value;
	
	var string="login=" + login + "&mdp=" + mdp + "&type=3";

	RequeteServeur('fonctions.php', string, 
				   function(retour) {
				   		if(retour=='error') alert('Identifiant ou mot de passe incorrect');	
						else location.reload();
				   }, 'get', true);
}