// A l'ouverture de la page initialiser l'objet ajax à false
var xhr = false;	


// Cette fonction s'execute quand l'utilisateur appuie sue un bouton du clavier
// dans le form de connection
// Si ce bouton est "entrer" cad (le code du bouton = 13) on execute l'evenement click sur le bouton valider
function validerFormulaire(e)
{
	 if(e.keyCode == 13)
		 document.formConInt.valider.click();
}

// Envoyer le login et mot de passe provenant du formulaire au script php
// via l'object xhr d'ajax.
function ajax_connect()
{	



	createXhr();
	
	if(xhr)
	{	
	
	
	
		if(verifierChampConnection())			
		{
				
			pseudo = document.formConInt.pseudo.value;
			motdepasse = document.formConInt.motdepasse.value;	
			
			xhr.open("POST", "ajax_connect.php", true);
			
			xhr.setRequestHeader("Content-Type", "Application/x-www-form-urlencoded");
			xhr.send("pseudo=" + pseudo + "&motdepasse=" + motdepasse);
			xhr.onreadystatechange = doConnect;	
			
		}
	}
}


// Initialiser l'object xhr selon le navigateur		
function createXhr()
{
	if(window.XMLHttpRequest)
	{
		xhr = new XMLHttpRequest();
	}
	else if(window.ActiveXObject)
	{
		xhr = new ActiveXObject("Microsoft.XMLHTTP");		
	}
	else
	{
		alert("Votre navigateur ne supporte pas l'object XMLHttpRequest");
	}
}

// La reponse d'ajax est le type de l'utilisateur voulant se connecter, si il existe.
// Sinon la reponse est "nontrouve"
// Si la reponse est egale à "nontrouve" on ajoute un message d'erreur au label labelMsg	
// dans le cas contraire on redirige l'utilisateur vers sa page perso selon son type
function doConnect()
{
	
	if(xhr.readyState == 4 && xhr.status == 200)
	{
			
		var serverReponse = xhr.responseText;
		
		
		// Identifiants non trouvés
		if(serverReponse=="nontrouve")
			document.getElementById("labelMsg").innerHTML = "Pseudo ou mot de passe incorrect";
		// Redirection vers l'éspace administrateur
		else if(serverReponse=="admin")
			window.location = "tete_reseau/rens_perm.php?rnsp=1";
		// Redirection vers les autres espaces utilisateurs
		else if(serverReponse=="internaute")
			window.location = "internaute/mes_donnees.php?mdp=1";
			
		else if(serverReponse=="intervenant")
			window.location = "intervenant/facturation.php?fct=1";
			
		else if(serverReponse=="franchise")
			window.location = "franchise/rens_perm.php?rnsp=1";			
			
	}
}

// Verifier si le pseudo et mot de passe sont saisies
function verifierChampConnection()
{
	if((document.formConInt.pseudo.value=="")||(document.formConInt.motdepasse.value==""))
	{
		alert("Veuillez saisir votre pseudo ainsi que votre mot de passe!");
		return false;
	}
	return true;	
}

// Envoyer le code postal de l'internaute provenant du formulaire au script php
// via l'object xhr d'ajax.
function verifierFranchise()
{		


	createXhr();
	
	if(xhr)
	{		
		codepostal = document.inscri_internaute.codepostal.value;
		
		xhr.open("POST", "ajax_list_franchise.php", true);
		xhr.setRequestHeader("Content-Type", "Application/x-www-form-urlencoded");
		xhr.send("codepostal=" + codepostal);
		xhr.onreadystatechange = afficherListFranchise;		
	}

}
/*
// A la reception d'une reponse positif, cette fonction redirige l'utilisateur vers son espace	
// au cas contraire elle ajoute un message d'erreur au label labelMsg		 
function afficherListFranchise()
{
	
	if(xhr.readyState == 4 && xhr.status == 200)
	{
					
		var serverResponse = xhr.responseText;	
		var list_franchise = new Array();
		list_franchise = serverResponse.split("/");	
		var tr_franchise = document.getElementById("tr_franchise");
		
		
		if(list_franchise.length>2)
		{
			var select_franchise = document.getElementById("select_franchise");
			select_franchise.innerHTML = "<option>Liste des franchises</option>";
			for(var i=0;i<list_franchise.length-1;i++)
			{
								
				var franchise = new Array();
				franchise = list_franchise[i].split(";");
				
				option_element = "<option value='"+franchise[0]+"'>"+franchise[1]+"</option>";				
				select_franchise.innerHTML += option_element;
			}

			tr_franchise.style.visibility = "visible";
			
		}
		else
		{
			if(tr_franchise.style.visibility == "visible")
				tr_franchise.style.visibility = "hidden";
		}
	}
}
*/
// A la reception d'une reponse positif, cette fonction redirige l'utilisateur vers son espace	
// au cas contraire elle ajoute un message d'erreur au label labelMsg	

function afficherListFranchise()
{
	
	if(xhr.readyState == 4 && xhr.status == 200)
	{
					
		var serverResponse = xhr.responseText;	

		var list_franchise = new Array();
		list_franchise = serverResponse.split("/");	
		var tr_franchise = document.getElementById("tr_franchise");

		var divFranchise = document.getElementById("divFranchise");
		
		if(list_franchise.length>2)
		{
			
			var text_select = "<select name='select_franchise' id ='select_franchise'><option value='-1'>Liste des franchises</option>";

			for(var i=0;i<list_franchise.length-1;i++)
			{
								
				var franchise = new Array();
				franchise = list_franchise[i].split(";");
				
				option_element = "<option value='"+franchise[0]+"'>"+franchise[1]+"</option>";				
				text_select += option_element;
			}
			text_select += "</select>";

			divFranchise.innerHTML = text_select;
			tr_franchise.style.visibility = "visible";
			
		}
		
		else
		{
			if(tr_franchise.style.visibility == "visible")
				tr_franchise.style.visibility = "hidden";
		}
		
		
	}
}



// Verifier la saisi de l'Email dans le formulaire mot de passe oublié
function verifierFormPass()
{
	if(document.formPassOublie.email.value=="")
	{
		alert("Veuillez saisir votre E-mail!");
		return false;
	}
	return true;
}


// Verifier les champs du formulaires d'inscription d'internaute
function verifierChamp()
{
	var somme = "";
	var exist = 0;

	if(document.inscri_internaute.nom.value=="")
	{
		somme+="votre nom,\n";
		exist = 1;
	}	
	
	
	if(document.inscri_internaute.prenom.value=="")
	{
		somme+="votre prénom,\n";
		exist = 1;
	}
	
	if(document.inscri_internaute.email.value=="")
	{
		somme+="votre email,\n";
		exist = 1;
	}		

	if(document.inscri_internaute.codepostal.value=="")
	{
		somme += "votre code postal,\n";
		exist = 1;
	}
	
		if(document.inscri_internaute.ville.value=="")
	{
		somme =somme +"votre ville,\n";
		exist = 1;
	}
	
		if(document.inscri_internaute.activite.value=="")
	{
		somme =somme +"votre activité,\n";
		exist = 1;
	}
	
	if(document.inscri_internaute.adresse.value=="")
	{
		somme =somme +"votre adresse,\n";
		exist = 1;
	}
	
	if(document.inscri_internaute.nss.value=="")
	{
		somme =somme +"votre numéro de securité sociale,\n";
		exist = 1;
	}
	
	if(exist == 1)
	{
		somme = somme.substring(0,somme.length-2);
		alert ("Veuiller saisir les champs suivants :\n"+somme);
		return false;
	}	
	
	if((document.inscri_internaute.tel_por.value!="")&&verifTel(document.inscri_internaute.tel_por.value))
	{
		alert("Le numéro de téléphone portable n'est pas valide!");
		return false;
	}
	
	if((document.inscri_internaute.email.value!="")&& verifMail(document.inscri_internaute.email.value))
	{
		alert("L'adresse E-mail n'est pas valide!");
		return false;
	}
	
	if((document.inscri_internaute.tel_fix.value!="")&&verifTel(document.inscri_internaute.tel_fix.value))
	{
		alert("Le numéro de téléphone fixe n'est pas valide!");
		return false;
	}
	
	if((document.inscri_internaute.nss.value!="")&&verifEntier(document.inscri_internaute.nss.value))
	{
		alert("Le numéro de sécurité sociale fixe n'est pas valide!");
		return false;
	}
	

	
	if((document.inscri_internaute.codepostal.value!="")&&verifEntier(document.inscri_internaute.codepostal.value))
	{
		alert("Le code postal n'est pas valide!");
		return false;
	}
	

	
	if((document.inscri_internaute.telecopi.value!="")&&verifTel(document.inscri_internaute.telecopi.value))
	{
		alert("Le numéro de télécopie n'est pas valide!");
		return false;
	}
	

	
	var tr_franchise = document.getElementById("tr_franchise");
	if(tr_franchise.style.visibility=="visible")
	{
		if(document.inscri_internaute.select_franchise.selectedIndex<=0)
		{	
			alert("Veuillez choisir votre Franchise");
			return false;
		}
	}

	if(!verifDate(document.inscri_internaute.dateNais.value))
	{
		alert("La date de naissance n'est pas valide");	
		return false;
	}
	
	if(document.inscri_internaute.nss.value.length!=15)
	{
		alert("Le numéro de sécurité sociale doit contenir 15 chiffres!");
		return false;
	}

	return true;	
}

// Vérifier la validité du format de la date
function verifDate(d)
{
	var tab_date = d.split("/");
	var jour = tab_date[0];
	var mois = tab_date[1];
	var annee = tab_date[2];
	if( tab_date.length != "3" || jour.length!="2" || verifEntier(jour) || mois.length!="2" || verifEntier(mois) || annee.length!="4" || verifEntier(annee))
	{
		return false;		
	}	
	
	return true;
}

// Verifier qu'une variable passée en paramètre est un entier
function verifTel(entier)
{

	for(i=0;i<entier.length;i++)
		 if((entier.charAt(i) < "0"|| entier.charAt(i) > "9") && (entier.charAt(i) != " "))
		 return 1;
	return 0;	
}

// Verifier qu'une variable passée en paramètre est un entier
function verifEntier(entier)
{

	for(i=0;i<entier.length;i++)
		 if(entier.charAt(i) < "0"|| entier.charAt(i) > "9")
		 return 1;
	return 0;	
}

// Vérifier la validité d'une adresse email passé en paramètre
function verifMail(email)
{
	
	var arobase = email.indexOf("@");
	var point = email.lastIndexOf(".");
	if((arobase < 3)||(point + 2 > email.length)||(point < arobase+3))
		return true;
	return false;
}


function enregistrer_diponibilite(nbJour)
{	
	
	var tabJours = new Array(31);
	for(var i=1;i<=31;i++)
	{
		var dispjour = "jour"+(i);
		
		if(document.getElementById(dispjour))
		{
			var td = document.getElementById(dispjour).className;
			if(td=="class_red")
				tabJours[i] = "N";
			else
				tabJours[i] = "O";
		}
		
	}
}
