$(document).ready(function(){
	$(function() {
		var emailLogin = $("form#form-login input#loginEmail"),
		    emailLogin2 = $("form#form-login2 input#loginEmail2"),
		    passwordLogin = $('form#form-login input#loginMotDePasse'),
		    passwordLogin2 = $('form#form-login2 input#loginMotDePasse2'),
		    loginFields = $([]).add(emailLogin).add(passwordLogin),
		    emailAP = $("form#AP input#emailAP"),
		    codeAP = $('form#AP input#codeAP'),
		    apFields = $([]).add(emailAP).add(codeAP),
		    tips = $("#validateTips");
		
		function updateTips(t) {
		    tips.text(t).effect("highlight",{},1500);
		}

		function checkLength(o,n,min,max) {
		    if ( o.val().length > max || o.val().length < min ) {
			o.addClass('ui-state-error');
			updateTips("Votre " + n + " doit-être compris entre "+min+" et "+max+" caracteres.");
			return false;
		    } else {
			return true;
		    }
		}

		function checkRegexp(o,regexp,n) {
		    if ( !( regexp.test( o.val() ) ) ) {
			o.addClass('ui-state-error');
			updateTips(n);
			return false;
		    } else {
			return true;
		    }
		}
		
		$("#allopass_box").dialog({
			bgiframe: true,
			    autoOpen: false,
			    height: 450,
			    width: 500,
			    modal: true,
			    buttons: {
			    'Valider ce code': function() {
				var bValid = true;
				apFields.removeClass('ui-state-error');
				bValid = bValid && checkLength(codeAP,"code",1,10);
				bValid = bValid && checkLength(emailAP,"email",6,80);
				bValid = bValid && checkRegexp(emailAP,/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,"Votre email est incorrect.");
					    
			    if (bValid) {
				$('form#AP input#data').val(emailAP.val()+"|"+window.location+"|"+$('form#AP input#annonce_id').val());
								$('form#AP').submit();
				$(this).dialog('close');
			    }
			},
			    Fermer: function() {
			    $(this).dialog('close');
			}
		    },
		    close: function() {
			loginFields.val('').removeClass('ui-state-error');
		    }
		    });

		$("#login").dialog({
			bgiframe: true,
			    autoOpen: false,
			    height: 380,
			    width: 500,
			    modal: true,
			    buttons: {
			    'Se connecter': function() {
				var bValid = true;
				loginFields.removeClass('ui-state-error');
				bValid = bValid && checkLength(emailLogin,"email",6,80);
				bValid = bValid && checkRegexp(emailLogin,/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,"Votre email est incorrect.");
				bValid = bValid && checkLength(passwordLogin,"mot de passe",1,30);
					    
			    if (bValid) {
				$('form#form-login').submit();
				$(this).dialog('close');
			    }
			},
			    Fermer: function() {
			    $(this).dialog('close');
			}
		    },
		    close: function() {
			loginFields.val('').removeClass('ui-state-error');
		    }
		    });
		    
      	    $('#login-click').click(function() {
		    $('#login').dialog('open');
		    return false;
		});
		$('#login-click2').click(function() {
		    $('#login').dialog('open');
		    return false;
		});
	    $('#allopass-click').click(function() {
		    $('#allopass_box').dialog('open');
		    return false;
		});

	    });
});