function isValidEmailAddress(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 isNumber (o) {
	return ! isNaN (o-0);
}

jQuery(document).ready(function(){
	jQuery(".btn-subscribe").click(function(){
    	jQuery("#emailsignup-success").hide();
    	jQuery("#signup_error").hide();
		jQuery("#emailsignup form").show();
		jQuery.fancybox({
			'href'			: '#emailsignup',
			'width'			: 500,
			'height'		: 500,
			'centerOnScroll': 'true',
			'overlayOpacity': 0.5,
			'overlayColor'	: '#000',
		});
    });    
});

function resetSignupForm() {
	jQuery("#s_fname").val('');
	jQuery("#s_lname").val('');
	jQuery("#s_email").val('');
}

function processDialogSignupForm() {

	var default_error = "Please correct the information above.";
	var fname = jQuery("#s_fname").val();
	var lname = jQuery("#s_lname").val();
	var email = jQuery("#s_email").val();
	
	jQuery("#signup_error").hide();
	
	if ( fname.length < 1 ) {
	    jQuery("input#s_fname").focus();
	    jQuery("#signup_error").html('Please enter your first name.').show();
	    jQuery.fancybox.resize();
	    return false;
	}
	
	if ( lname.length < 1 ) {
	    jQuery("input#s_lname").focus();
	    jQuery("#signup_error").html('Please enter your last name.').show();
	    jQuery.fancybox.resize();
	    return false;
	}

	if ( !isValidEmailAddress(email) || email.length < 1  ) {
		jQuery("input#s_email").focus();
		jQuery("#signup_error").html('Please enter / correct your email address.').show();
		jQuery.fancybox.resize();
		return false;
	}
	
	jQuery.fancybox.showActivity();
	
	jQuery.ajax({
		type	: "POST",
		cache	: false,
		url		: "http://themethodpilates.com/subscribe/subscribe.php",
		data	: jQuery('form#emailsignup_form').serializeArray(),
		success	: function(data) {
					if ( 'success' == data ) {
						jQuery.fancybox.hideActivity();
						jQuery("#emailsignup form").hide();
						jQuery("#emailsignup-success").show();
						jQuery("#emailsignup-success").delay(4000).fadeOut( function() { 		
							 jQuery.fancybox.close();
						});
						resetSignupForm();
					} else {
						jQuery.fancybox.hideActivity();
						jQuery("#emailsignup form").show();
						jQuery("#signup_error").html('Are you already subscribed? If not, we encountered an error.  Please try again later.').show();
					}
				  }
	});

	return false;
}
