$(document).ready(function() {

	var formName = 'subscribeMinForm';

	$('input#subscribeLogin').val('');
	
	$('#oldPassword').focus(function() {
		$('label#checkOldPassword').remove();
	});
	
	$('#subscribeLogin').focus(function() {
			$('label#checkIDResult').remove();
	});
	
	//Vï¿½rifie la disponibilitï¿½ de l'identifiant quand on clique sur le bouton "Vï¿½rifier"
	$('#checkIDButton').click(function() {
		if ($("#" + formName).validate().element('#subscribeLogin'))
			checkIDAvailability($('#subscribeLogin').val(), '#subscribeLoginField');
	});
	
	//Vï¿½rifie la disponibilitï¿½ de l'identifiant quand on clique sur le bouton "Continuer" //
	// Vérifie que le mail n'est pas déjà associé à un autre compte quand on clique sur le bouton "Continuer" //
	$('#subscribeButton').click(function() 
	{
		var checkedIDAvailability = checkIDAvailability($('#subscribeLogin').val(), '#subscribeLoginField');
	//	var checkedDuplicateMail = checkDuplicatedEmail($('input[name="alternativeEmail"]').val());
		if (checkedIDAvailability /*&& !checkedDuplicateMail*/)
			$("#" + formName).submit();
	});
		
	// fonction à vérifier car marche plus ou moins //
	/*$('input#subscribeLogin').keyup(function(){
		if ($("#" + formName).validate().element('#subscribeLogin'))
		{
			$('label#checkIDResult').remove();
			//var login = $(this).val();	
			if ($.trim($(this).val()) != "" && $(this).val().length > 3)
			{
					//alert(login);
					//alert("on fait le traitement");
					$.post($('input#checkIDUrl').val(), {idToCheck: ""+$(this).val()+""}, 
					function(data)
					{
						$('#subscribeLoginField').append(data);
						$('label#checkIDResult').fadeOut("slow",function(){
							$(this).show();
						});
					});
					checked = $('label#checkIDResult').hasClass('success');
			} 
			else {
					checked = true;
			}
			return checked;
		}
	});*/
	
	// Vérifie que le mail n'est pas déjà associé à un autre compte //
	/*$('input[name="alternativeEmail"]').blur(function() {
		if ($("#" + formName).validate().element('#alternativeEmail'))
			checkDuplicatedEmail($('input[name="alternativeEmail"]').val());
	});*/

	//Vï¿½rifie la "force" du mot de passe		
	$('input[name="subscribePassword"]').passwordStrength(
			{targetDiv: '#iSM', classes : Array('weak', 'medium', 'strong')}
	);
	
	//Valide le formulaire d'inscription		
	$("#" + formName).validate({		
		rules: {
			subscribeLogin: {
				required: true,
				noSpaces: true,
				validChars: true,
				letterswithbasicpunc: true,
				validateLoginSyntax: true,
				minlength: 4				
			},
			subscribePassword: {
				required: true,
				minlength: 6
			},			
			confirm: {
				equalTo: "#subscribePassword"
			},
			alternativeEmail: {
				required: true,
				email: true
			},						
			acceptConditions: {
				required: true
			},
			userInput: {
				required: true
			}
		},
		messages: 
		{
			subscribeLogin:	{ 
				required: document.forms[formName].loginRequired.value,
				minlength: jQuery.format(document.forms[formName].loginMinLength.value),
				validChars: document.forms[formName].validChars.value + " " + getInvalidChars(),
				noSpaces: document.forms[formName].noSpaces.value
			},
			subscribePassword: {
				required: document.forms[formName].passwordRequired.value,
				minlength: jQuery.format(document.forms[formName].passwordMinLength.value)
			},			
			confirm: {
				equalTo: document.forms[formName].confirmPasswordEqualTo.value
			},
			alternativeEmail: {
				required: document.forms[formName].alternativeEmailRequired.value,
				email: document.forms[formName].badEmail.value
			},
			acceptConditions: {
				required: document.forms[formName].acceptConditionsRequired.value
			},
			userInput: {
				required: document.forms[formName].captchaRequired.value
			}						
		}
	});
});