//Fonctions permettant de verifier les champs des formulaires
function verifieName()
{
	firstName = document.getElementById('first_name').value;
	if (firstName != "")
	{
		document.getElementById('message_first_name').innerHTML= '<img src="images/valid.jpg"/>';
		if (verifieTousLesChamps() == true)
		{
			document.getElementById('submit').disabled=false;
		}
	}
	else
	{
		document.getElementById('submit').disabled=true;
		document.getElementById('message_first_name').innerHTML= '<img src="images/error.jpg"/> ';
	}
}

function verifieUser() //Verifie si l'utilisateur n'existe pas déjà dans la base
{
	var xhr = getXhr();
	// On défini ce qu'on va faire quand on aura la réponse
	xhr.onreadystatechange = function()
	{
			// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
			if(xhr.readyState == 4 && xhr.status == 200)
			{
				test_pseudo = document.getElementById('pseudo').value;
				if (test_pseudo != "" && test_pseudo.length > 3)
				{
					var resultat = xhr.responseText;
					if(resultat== "0")  //Si aucune recherche n'a encore été effectué ou rien a ete trouve
					{
						document.getElementById('message_pseudo').innerHTML = '<img src="images/valid.jpg"/>';
						if (verifieTousLesChamps() == true)
						{
							document.getElementById('submit').disabled=false; 
						}
					}
					else    //On se sert de innerHTML pour rajouter les options a la liste	
					{	
						document.getElementById('submit').disabled=true; 
						document.getElementById('message_pseudo').innerHTML= '<img src="images/error.jpg"/> '+ resultat;	
					}
				}
				else
				{
					document.getElementById('submit').disabled=true; 
					document.getElementById('message_pseudo').innerHTML= '<img src="images/error.jpg"/> ';
				}
			}
		
	}
	// Ici on va voir comment faire du post
	xhr.open("POST","script/verif_pseudo.php",true);
	// ne pas oublier ça pour le post
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	// ne pas oublier de poster les arguments
	// ici, le nom
	pseudo = document.getElementById('pseudo').value;
	param = window.location.search.slice(1,window.location.search.length);
	first = param.split("&");
	xhr.send("pseudo="+pseudo+"&"+first);
	//xhr.send(first);
}

function verifiePassword()
{
	password = document.getElementById('password').value;
	if(password.length >= 6)
	{
		document.getElementById('message_password').innerHTML= '<img src="images/valid.jpg"/>';
		verifieR_password();
	}
	else
	{
		document.getElementById('submit').disabled=true;
		document.getElementById('message_password').innerHTML= '<img src="images/error.jpg"/>';
	}
}

function verifieR_password() //Verifie si l'utilisateur n'existe pas déjà dans la base
{
	password = document.getElementById('password').value;
	r_password = document.getElementById('r_password').value;
	//alert(password);
	//alert(r_password);
	if (password == r_password && password.length>=6)
	{
		document.getElementById('message_r_password').innerHTML = '<img src="images/valid.jpg"/>';
		if (verifieTousLesChamps() == true)
		{
			document.getElementById('submit').disabled=false; 
		}
		else
		{
			document.getElementById('submit').disabled=true; 
		}
	}
	else
	{
		document.getElementById('submit').disabled=true;
		document.getElementById('message_r_password').innerHTML= '<img src="images/error.jpg"/>';
	}
}

function verifieEmail() //Verifie si l'utilisateur n'existe pas déjà dans la base
{
	email = document.getElementById('email').value;
	var re1=	/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;	/*expr regul pour l'email */
	if (email != "")
	{
		if(email.match(re1))
		{
			document.getElementById('message_email').innerHTML = '<img src="images/valid.jpg"/>';
			if (verifieTousLesChamps() == true)
			{
				document.getElementById('submit').disabled=false; 
			}
			else
			{
				document.getElementById('submit').disabled=true; 
			}
		}
		else
		{
			document.getElementById('submit').disabled=true;
			document.getElementById('message_email').innerHTML= '<img src="images/error.jpg"/>';
		}
		
	}
	else
	{
		document.getElementById('submit').disabled=true;
		document.getElementById('message_email').innerHTML= '<img src="images/error.jpg"/>';
	}
}

function changeCountry()
{
	var xhr = getXhr();
	// On défini ce qu'on va faire quand on aura la réponse
	xhr.onreadystatechange = function(){
		// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
		if(xhr.readyState == 4 && xhr.status == 200)
		{
			test_id_continent = sel.options[sel.selectedIndex].value;
			texte = xhr.responseText;
			// On se sert de innerHTML pour rajouter les options a la liste
			document.getElementById('country').innerHTML = texte;
			if (test_id_continent != "-1")
			{
				document.getElementById('message_continent').innerHTML= '<img src="images/valid.jpg"/> ';
				if (verifieTousLesChamps() == true)
				{
					document.getElementById('submit').disabled=false; 
				}
				else
				{
					document.getElementById('submit').disabled=true; 
				}
			}
			else
			{
				document.getElementById('submit').disabled=true; 
				document.getElementById('message_continent').innerHTML= '<img src="images/error.jpg"/> ';
				document.getElementById('message_country').innerHTML= '<img src="images/error.jpg"/> ';
			}
		}
	}

	// Ici on va voir comment faire du post
	xhr.open("POST","script/get_country.php",true);
	// ne pas oublier ça pour le post
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	// ne pas oublier de poster les arguments
	// ici, l'id de l'auteur
	sel = document.getElementById('continent');
	id_continent = sel.options[sel.selectedIndex].value;
	param = window.location.search.slice(1,window.location.search.length);
	first = param.split("&");
	xhr.send("id_continent="+id_continent+"&"+first);
}

function verifieCountry()
{
	sel = document.getElementById('country_');
	country_code = sel.options[sel.selectedIndex].value;
	if(country_code != "-1")
	{
		document.getElementById('message_country').innerHTML= '<img src="images/valid.jpg"/> ';
		if (verifieTousLesChamps() == true)
		{
			document.getElementById('submit').disabled=false; 
		}
		else
		{
			document.getElementById('submit').disabled=true; 
		}
	}
	else
	{
		document.getElementById('submit').disabled=true; 
		document.getElementById('message_country').innerHTML= '<img src="images/error.jpg"/> ';
	}
}

function verifieInfo()
{
	sel = document.getElementById('information');
	information = sel.options[sel.selectedIndex].value;
	if(information != "-1")
	{
		document.getElementById('message_info').innerHTML= '<img src="images/valid.jpg"/> ';
		if (information == "other")
		{
			document.getElementById('insert_info').innerHTML= '<input type="text" id="new_info" name="new_info" onKeyup="verifieNewInfo();"/>';
		}
		else
		{
			document.getElementById('insert_info').innerHTML= '';
			document.getElementById('message_insert_info').innerHTML= '';
		}
		if (verifieTousLesChamps() == true)
		{
			document.getElementById('submit').disabled=false; 
		}
		else
		{
			document.getElementById('submit').disabled=true; 
		}
	}
	else
	{
		document.getElementById('insert_info').innerHTML= '';
		document.getElementById('message_insert_info').innerHTML= '';
		document.getElementById('submit').disabled=true; 
		document.getElementById('message_info').innerHTML= '<img src="images/error.jpg"/> ';
	}
}

function verifieNewInfo()
{
	var info = document.getElementById('new_info').value;
	if(info != "")
	{
		document.getElementById('message_insert_info').innerHTML= '<img src="images/valid.jpg"/> ';
		if (verifieTousLesChamps() == true)
		{
			document.getElementById('submit').disabled=false; 
		}
		else
		{
			document.getElementById('submit').disabled=true; 
		}
	}
	else
	{
		document.getElementById('submit').disabled=true; 
		document.getElementById('message_insert_info').innerHTML= '<img src="images/error.jpg"/> ';
	}
}

function verifieConditions()
{
	var conditions = document.getElementById('condition_of_use').checked;
	if (conditions == true)
	{
		document.getElementById('message_condition_of_use').innerHTML= '<img src="images/valid.jpg"/> ';
		if (verifieTousLesChamps() == true)
		{
			document.getElementById('submit').disabled=false; 
		}
		else
		{
			document.getElementById('submit').disabled=true; 
		}
	}
	else
	{
		document.getElementById('submit').disabled=true; 
		document.getElementById('message_condition_of_use').innerHTML= '<img src="images/error.jpg"/> ';
	}
}

function verifieTousLesChamps()
{
	firstName = document.getElementById('first_name').value;
	if (firstName == "")
	{	return false; }
	else
	{
		pseudo = document.getElementById('pseudo').value;
		if( pseudo == "")
		{	return false; }
		else
		{
			password = document.getElementById('password').value;
			r_password = document.getElementById('r_password').value;
			if(password == "" || r_password == "")
			{	return false; }
			else
			{
				email = document.getElementById('email').value;
				if( email == "")
				{	return false; }
				else
				{
					sel = document.getElementById('continent');
					id_continent = sel.options[sel.selectedIndex].value;
					if (id_continent == "-1")
					{  return false; }
					else
					{
						sel2 = document.getElementById('country_');
						id_country = sel2.options[sel2.selectedIndex].value;
						if (id_country == "-1")
						{	return false; }
						else
						{
							sel3 = document.getElementById('information');
							information = sel3.options[sel3.selectedIndex].value;
							if(information == "-1")
							{	return false; }
							else
							{
								if(information == "other")
								{
									var new_info = document.getElementById('new_info').value;
									if (new_info == "")
									{	return false; }
									else
									{
										var conditions = document.getElementById('condition_of_use').checked;
										if (conditions == false)
										{	return false; }
									}
								}
								else
								{
									var conditions = document.getElementById('condition_of_use').checked;
									if (conditions == false)
									{	return false; }
								}
							}
						}
					}
				}
			}
		}
		
	}
	
	return true;
}

function chargement()
{
	verifieName();
	verifieUser();
	verifiePassword();
	verifieR_password();
	verifieEmail();
	verifieInfoChargement();
}

function verifieInfoChargement()
{
	sel = document.getElementById('information');
	information = sel.options[sel.selectedIndex].value;
	document.getElementById('message_info').innerHTML= '<img src="images/valid.jpg"/> ';	
}

function essai()
{
	alert("yop");
}
