// JavaScript Document
jQuery(document).ready(function($) {
	var signup = $("a.signup");
	signup.attr("href", "#newsletter-signup-fancybox");
	signup.fancybox({scrolling:"no", titleShow:false, padding:0, href:"#newsletter-signup-fancybox"});
	
	
	function checkEmail(email) { 
		var pattern = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		var emailVal = $(email).val();
		return pattern.test(emailVal);
	}
	
	function checkName(input){
		return $(input).val() !== "";
	}
	/*var theSubmit = $("#signup-submit");
	var theClick = $("<a href='#' class='btn' style='margin-right:-4px'><span class='left'><!-- Spacer --></span>Sign up now<span class='right'><!-- Spacer --></span></a>").insertAfter(theSubmit);
	theSubmit.remove();
	
	theClick.click(function(){
		$("#signup").submit();
	});*/
	
	$("#signup").submit(function(e){
		var emailChecked = checkEmail("#signup-email");
		if(emailChecked && checkName("input[name=cm-f-irhdyh]") && checkName("input[name=cm-f-irhdyk]")){
			showQuerying();
			var str = $(this).serialize();
			$.ajax({
				url: "proxy.php",
				type:"POST",
				data:str,
				cache:false,
				success: function(data){
					if (data.search(/invalid/i) != -1) {
						showEmailError();
					} else if(data.search(/general_input_error_unicef/i) != -1) {
						showError();
					} else {
						showComplete();
					}
				},
				error:showError
			});
		} else {
			if(emailChecked){
				showNameError();
			} else {
				showEmailError();
			}
		}
		e.preventDefault();
	});
	
	function showNameError(){
		$("#signup-error").html("Please enter your name");
	}
	
	function showEmailError(){
		$("#signup-error").html("Please check that your email address is correct");
	}
	
	function showError(){
		$("#signup-error").html("An internal server error has prevented your form from submitting. Please try again later.");
	}
	
	function showQuerying(){
		$("#signup-error").html("<span class='loading'>Sending...</span>");
	}
	
	function showComplete(){
		$("#signup table").html("<tr><td class='copy'>Thank you for signing up to our newsletter</td></tr>");
	}
});

function trace(str){
	if(console.log){
		console.log(str);
	}
}
