
function validate_email_address(email_address) {
	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(email_address);
}

google.load('jquery', '1.4.2');
google.setOnLoadCallback(function () {
		setTimeout(function(){ $(".flash_message").slideUp("medium"); }, 5000);

		$("#newsletter_submit").attr({ disabled: true });	

		var	check_valid_name = function () {
			$("#newsletter_name").removeClass('valid');
			$("#newsletter_name").addClass('invalid');

			if ($("#newsletter_name").val().length != 0) { 
				$("#newsletter_name").removeClass('invalid');
				$("#newsletter_name").addClass('valid');
			}

			check_valid_form();
		}

		var check_valid_email = function () {
			$("#newsletter_email").removeClass('valid');
			$("#newsletter_email").addClass('invalid');

			if (validate_email_address($("#newsletter_email").val())) { 
				$("#newsletter_email").removeClass('invalid');
				$("#newsletter_email").addClass('valid');
			}

			check_valid_form();
		}

		var check_valid_form = function () {
			if ($(".valid").length == 2) { 
				$("#newsletter_submit").attr({ disabled: false });	
			}
		}

		$("#newsletter_name").keyup(check_valid_name);
		$("#newsletter_email").keyup(check_valid_email);
});

