$(function () {
	var signup_field = $('div.signupPanel input.signupField');
	var signup_btn = $('div.signupPanel input.signupButton');
	
	signup_field.val("Email Address");
	signup_field.focus(function(event) {
		var field = $(this);
		if(field.val() == "Email Address") field.val("");
	});
	signup_field.blur(function(event) {
		var field = $(this);
		if(field.val() == "") field.val("Email Address");
	});	
	
	var signup_field_changed = false;
	var signup_field_prev = 'Email Address';
	
	signup_btn.click(function(event) {
		$(this).blur();
		signup_field_changed = false;
		
		btnSignupClick(event); 
	});
	signup_field.keyup(function(evt) {
		if(evt.keyCode == 13 && signup_field_changed == true && signup_field.attr("disabled") == false) {
			signup_field_changed = false;
			signup_field.blur();
			
			btnSignupClick(evt);
		} 
		
		if(signup_field.val() != signup_field_prev) {
			signup_field_changed = true;
		}
		
		signup_field_prev = signup_field.val();
		
		evt.preventDefault();
	});
	
	
	function btnSignupClick(evt) {
		email = $('div.signupPanel input.signupField');
		
		// need to better validate/handle this ...
		if(email && email.val() != "Email Address" && email.val() != "") {
			email.attr("disabled", true);
			signupForEnewsletter(email.val());
		} else {
			alert("Please enter an email address to sign up for the enewsletter.");
		}
		
		evt.preventDefault();
	}
	
	function signupForEnewsletter(email_address) {
		$.ajax({
			url: "/SiteFiles/1579/services.asmx/Subscribe", 
			data: '{ email: "' + email_address + '" }',
			contentType: "application/json; charset=utf-8",
	        dataType: "json",
			type: "POST",
			success: function(data){
				if(data.d.IsError == false) {
					window.location = "/emailsignupthanks";
				} else {
					alert(data.d.Errors[0]);
					email.attr("disabled", false);
				}
			}
		});
	}
});
