function getHTTPObject(param)
{
	var xmlhttp = false;

	/* Compilation conditionnelle d'IE */
	/*@cc_on
	@if (@_jscript_version >= 5)
	try
	{
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch (e)
	{
		try
		{
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch (E)
		{
			xmlhttp = false;
		}
	}
	@else
		xmlhttp = false;
	@end @*/
	
	/* on essaie de créer l'objet si ce n'est pas déjà  fait */
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
		try {
			xmlhttp = new XMLHttpRequest();
		}
		catch (e) {
			xmlhttp = false;
		}
	}

	if (xmlhttp) {
		/* on définit ce qui doit se passer quand la page répondra */
		xmlhttp.onreadystatechange = function() {
			if (xmlhttp.readyState == 4) {
				if (xmlhttp.status == 200) {
					// cas 1: identification
					if(param == 1) {
						var message_connexion = document.getElementById('message_connexion');
						if(xmlhttp.responseText == 1) {
							message_connexion.innerHTML = "&nbsp;";
							// Redirection sur la page personnalisée
							window.location.replace('bookme.php');
						}
						else {
							if(xmlhttp.responseText == '2') {
								message_connexion.innerHTML = "Votre compte n'est pas encore activé.";	
							} else {
								message_connexion.innerHTML = "Erreur d'identification, veuillez réessayer !";	
							}
						}
						messageChargement(0);
					}

					// cas 2: vérification email
					if(param == 2) { 
						var resultatemail = document.getElementById('resultatemail');
						if(xmlhttp.responseText == 1) {
							resultatemail.innerHTML = '<img src="charte/ok.gif" alt="champs validé" />';
						}
						else {
							resultatemail.innerHTML = '<img src="charte/erreur.gif" alt="champs non validé" />&nbsp;Email déjà inscrit';
						}          
					} 

					// cas 3: Inscription utilisateur
					if(param == 3) { 
						if(xmlhttp.responseText == 1) {
							// Fermeture de la fenêtre de chargement
							messageChargement(0);
							var message_connexion = document.getElementById('message_connexion');
							message_connexion.innerHTML = "Vous allez recevoir un email dans quelques minutes afin d'activer votre compte";
						}
					}
					
					// cas 4: vérification email du mot passe perdu
					if(param == 4) { 
						var resultatMemail = document.getElementById('resultatMemail');
						if(xmlhttp.responseText == 2) {
							remplirMdpPerdu();
						} else {
							if(xmlhttp.responseText == 1) {
								resultatMemail.innerHTML = '<img src="charte/erreur.gif" alt="champs non validé" />&nbsp;Email non inscrit';
							}
							else {
								resultatMemail.innerHTML = '<img src="charte/ok.gif" alt="champs validé" />';
							} 
						}
					} 

				}
			}
		}
	}

	return xmlhttp;
}
 
function verifEmail()
{
	return !sendData(
		'POST',
		'action_serveur/action_index_inscription.php',
		'xmlhttp=1&'+
		'email='+document.getElementById('email').value,
		2); 
}

function verifMdpEmail()
{
	return !sendData(
		'POST',
		'action_serveur/action_index_motdepasse.php',
		'xmlhttp=1&'+
		'email='+document.getElementById('mdp_email').value,
		4); 
}

// Envoi des données saisies dans le formulaire au serveur
// afin d'enregistrer le nouvel utilisateur
function enregistrementUtilisateur(nom, prenom, email, mdp)
{
	messageChargement(1);
	
    return !sendData(
       'POST',
       'action_serveur/action_index_inscription.php',
       'xmlhttp=1&'+
       'nom='+ nom +
       '&'+
  	   'prenom='+ prenom +
         '&'+
  	   'email='+ email +
         '&'+
  	   'password='+ mdp,
       3); 
}

// Fonction de vérification de l'identification
function verifId() {
	
	// Affichage du message de chargement
	messageChargement(1);
  
	// Envoi des données
	return !sendData(
		'POST',
		'/action_serveur/action_index_identification.php',
		'xmlhttp=1&'+
		'login='+document.getElementById('txtLogin').value+
		'&'+
		'password='+document.getElementById('txtPassword').value,
		1);
}



function sendContact(nom, prenom, email, msg)
{
    return !sendData(
       'POST',
       'action_serveur/action_index_contact.php',
       'xmlhttp=1&'+
       'nom='+ nom +
       '&'+
  	   'prenom='+ prenom +
         '&'+
  	   'email='+ email +
         '&'+
  	   'message='+ msg,
       3); 
}
 
// Envoi de données asynchrones
function sendData(method, url, data, param) {
	var xmlhttp = getHTTPObject(param);
	
	if (!xmlhttp) {
		return false;
	}
	
	if(method == "GET") {
		if(data == 'null') {
			xmlhttp.open("GET", url, true); //ouverture asynchrone
		}
		else {
			xmlhttp.open("GET", url+"?"+data, true);
		}
		xmlhttp.send(null);
	}
	else if(method == "POST") {
		xmlhttp.open("POST", url, true); //ouverture asynchrone
		xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		xmlhttp.send(data);
	}
	return true;
}