var request;

//Check the navigator used to initialize correctly the Ajax
if (navigator.appName == "Microsoft Internet Explorer") 
{ 
	request = new ActiveXObject("Microsoft.XMLHTTP"); 
} 
else 
{ 
	request = new XMLHttpRequest();
}


//Function of validation of the postal code
function checkRegistrationCode(code)
{
	//Check is the postal code is empty
	if (code == '') 
	{ 
 
	}
	//Check if the code has less than 5 numbers  - Display error if needed
	else if (code.length < 5) 
	{ 
		document.getElementById('messageCode').innerHTML = '<span id="messageCodeResult" class="error">Le code postal doit comporter 5 chiffres</span>';
	} 
	//Check if the code has 5 numbers 
	else if (code.length == 5) 
	{ 
		
		var success = 4;
		
		request.abort();
		
		//Initialize the request
		request.open("GET", "/registration/codeajax/code/" + code, true);
		
		//Manage the result
		request.onreadystatechange=function() 
		{ 
			//If the request is correctly executed, we display the result
			if (request.readyState == success) 
			{ 
				document.getElementById('messageCode').innerHTML = request.responseText;
			}
		};
		
		request.send(null);
	}
	//If the is more than 5 characters, display an error
	else
	{
		document.getElementById('messageCode').innerHTML =  '<span id="messageCodeResult" class="error">Le code postal ne peut être compos&eacute; de plus de 5 chiffres</span>';
	}
}


//Function of validation of the username
function checkUsername(user)
{
	//Check if the username is empty
	if (user == '') 
	{ 
		
	}
	//If the username has less than 4 caracters 
	else if (user.length < 4) 
	{ 
		document.getElementById('messageUser').innerHTML = '<span id="messageUserResult" class="error">Votre nom d\'utilisateur doit comporter au minimum 4 caract&egrave;res</span>';
	}
	//If the username has 4 caracters or more
	else if (user.length >= 4) 
	{ 
		var success = 4;
		
		request.abort();
		
		//Initialize the request
		request.open("GET", "/registration/userajax/user/" + user, true); 
		
		//Manage the result
		request.onreadystatechange=function() 
		{ 
			//If the request is correctly executed, we display the result
			if (request.readyState == success) 
			{ 
				document.getElementById('messageUser').innerHTML = request.responseText;
			}
		};
		request.send(null);
	}
}


//Function of validation of the password
function checkPassword(password)
{
	//Check if the password is empty
	if (password == '') 
	{ 
		 
	} 
	//If the password has less than 6 caracters
	else if (password.length < 6) 
	{ 
		document.getElementById('messagePassword').innerHTML = '<span id="messagePasswordResult" class="error">Votre mot de passe doit comporter au minimum 6 caract&egrave;res</span>';
	} 
	else 
	{
		document.getElementById('messagePassword').innerHTML = '<span id="messagePasswordResult" class="ok">Votre mot de passe est accept&eacute;</span>';
	}
}


//Function of comparaison of the two passwords
function checkPasswordConfirm(passwordConfirm)
{
	
	if(document.getElementById("reguserPassword").value == passwordConfirm)
	{
		document.getElementById('messagePasswordConfirm').innerHTML = '<span id="messagePasswordConfirmResult" class="ok">Les deux mots de passe sont identiques</span>';
	}
	else
	{
		document.getElementById('messagePasswordConfirm').innerHTML = '<span id="messagePasswordConfirmResult" class="error">Les deux mots de passe ne sont pas identiques</span>';
	}	
}


//Function of validation of the email
function checkEmail(email)
{
	var success = 4;
	
	request.abort();
	
	//Initialize the request
	request.open("GET", "/registration/emailajax/email/" + email, true);
	
	//Manage the result
	request.onreadystatechange=function() 
	{ 
		//If the request is correctly executed, we display the result
		if (request.readyState == success) 
		{ 
			document.getElementById('messageEmail').innerHTML = request.responseText;
		}
	};
	
	request.send(null);
}

//Function of validation of the captcha
function checkCaptcha(captcha)
{
	var captchaId = document.getElementById('captchaId').value;
	
	var success = 4;
	
	request.abort();
	
	//Initialize the request
	request.open("GET", "/registration/captchaajax/captcha/" + captcha + "/captchaId/" + captchaId, true);
	
	//Manage the result
	request.onreadystatechange=function() 
	{ 
		//If the request is correctly executed, we display the result
		if (request.readyState == success) 
		{ 
			document.getElementById('messageCaptcha').innerHTML = request.responseText;
		}
	};
	
	request.send(null);
}

//Function which checks if the form is well completed
function testRegister()
{
	var stringUser = "Votre nom d'utilisateur est disponible";
	var stringPassword = "Votre mot de passe est accepté";
	var stringPasswordConfirm = "Les deux mots de passe sont identiques";
	var stringEmail = "Votre email est valide";
	var stringCode = "Le code postal est valide";
	var stringCaptcha = "Le code saisi est validé";
	
	
	if(document.getElementById("cguvalid").checked == false)
	{
		document.getElementById("messageCgu").innerHTML = '<span class="error">Merci d\'accepter les conditions générales d\'utilisations</span>';
	}
	else
	{
		document.getElementById("messageCgu").innerHTML = "";
	}
	
	// Check if something is written in the ajax labels
	if((document.getElementById("messageUser").innerHTML) != "" 
	&& (document.getElementById("messagePassword").innerHTML) != ""
	&& (document.getElementById("messagePasswordConfirm").innerHTML) != ""
	&& (document.getElementById("messageEmail").innerHTML) != ""
	&& (document.getElementById("messageCode").innerHTML) != ""
	&& (document.getElementById("messageCaptcha").innerHTML) != ""
	&& (document.getElementById("cguvalid").checked) == true)
	{
		// if everything is good then  return true
		if((document.getElementById("messageUserResult").innerHTML) == stringUser 
		&& (document.getElementById("messagePasswordResult").innerHTML) == stringPassword
		&& (document.getElementById("messagePasswordConfirmResult").innerHTML) == stringPasswordConfirm
		&& (document.getElementById("messageEmailResult").innerHTML) == stringEmail
		&& (document.getElementById("messageCodeResult").innerHTML) == stringCode
		&& (document.getElementById("messageCaptchaResult").innerHTML) == stringCaptcha)
		{
			
			return true;
			
		}
		else
		{
			
			return false;
		}
	}
	else
	{
		
		return false;
	}
	
	
}

