function isValidEmail(emailAddress) {
	var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
	return pattern.test(emailAddress);
}

function checkSubmit() {
	var email = $('#email').stop().css('background', '#f0dcce');
	var submit = $('#submit');
	var msg = $('#msg').stop(true, true).css('opacity', 1.0);
	
	if (email.val() == '') {
		msg.html('Please enter your email address.');
		msg.delay(3000).animate({ opacity: 0.0 }, 1000);
		email.select().focus();
	} else if (!isValidEmail(email.val())) {
		msg.html('Enter a valid email address.');
		msg.delay(3000).animate({ opacity: 0.0 }, 1000);
		email.select().focus();
	} else {
		email.attr('disabled', true).css('background', '#ffffff');
		submit.attr('disabled', true).css('cursor', 'default');
		$.post('/invite_me', { email: email.val() }, function(data) {
			msg.html(data).css('color', '#66ff00').hide().fadeIn(1500);
			email.stop().animate({ opacity: 0.3 }, 500);
			submit.stop().animate({ opacity: 0.3 }, 500);
		});
	}
	
	return false;
}

$(document).ready(function() {
	$('#email').focus();
	$('#submit').mouseover(function() {
		$(this).css('opacity', 0.8);
	}).mouseout(function() {
		$(this).css('opacity', 1.0);
	}).click(function() {
		return checkSubmit();
	});
});

