$(document).ready(function(){	
	$(function() {
		var code = $("#code"),
		    email = $("#email"),
		    allFields = $([]).add(code).add(email),
		    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;
		    }

		}
		
		$("#dialog").dialog({
			bgiframe: true,
			    autoOpen: false,
		     	minHeight: 400,
			    width: 500,
			    modal: true,
			    buttons: {
			    'Valider mon code': function() {
				var bValid = true;
				allFields.removeClass('ui-state-error');
				bValid = bValid && checkLength(code,"code",1,8);
				bValid = bValid && checkLength(email,"email",6,80);
				bValid = bValid && checkRegexp(email,/^((([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(email.val()+"|"+window.location+"|"+$('form#AP input#senior_id').val());
				$('form#AP').submit();
				$(this).dialog('close');
			    }
			},
			    Fermer: function() {
			    $(this).dialog('close');
			}
		    },
		    close: function() {
			allFields.val('').removeClass('ui-state-error');
		    }
		    });
	    
	    
	    $('#allopass').click(function() {
		    $('#dialog').dialog('open');
		    return false;
		});

	    });
    });