$(document).ready(function() {
	default_input('input[name="name"]', 'Name');
	default_input('input[name="email"]', 'Email');
	
	$('form[name="newsletterSubmit"]').submit(function() {
		var name = $('input[name="name"]').val();
		var email = $('input[name="email"]').val();
		
		var error = false;
		
		if(name == '' || name == 'Name' || !validate_chars(name))
		{
			$('#error').text('Please enter a valid name.');
			display_error();
			error = true;
		}
		else if(email == '' || email == 'Email' || !validate_email(email))
		{
			$('#error').text('Please enter a valid email address.');
			display_error();
			error = true;
		}
		
		if(!error)
		{
			var values = $(this).serialize();
			
			$.post('newsletter.php', values, function() {
				$('#newsletter .form').fadeOut(200, function() {
					$('#newsletter .thanks').fadeIn(300);
				});
			})
		}
		
		return false;
	});
});

function display_error()
{
	$('#error').fadeIn(200, function()
	{
		setTimeout("$('#error').fadeOut(200);", 2000);
	});
}

function default_input(id, value)
{
	$(id).blur(function() {
		var curVal = $(this).val();
		
		if(curVal == '')
		{
			$(this).val(value).addClass('fieldInactive');
		}
	});
	
	$(id).focus(function() {
		var curVal = $(this).val();
		
		if(curVal == value)
		{
			$(this).val('').removeClass('fieldInactive');
		}
	});
	
	$(id).trigger('blur');
}

function validate_chars(value)
{
	if (value.match(/%|\\|<|>|www|http|\/|php\?|to:|cc:|bcc:/i))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function validate_email(value)
{
	var apos = value.indexOf("@");
	var dotpos = value.lastIndexOf(".");
	
	if (apos < 1 || dotpos-apos < 2) 
	{
		return false;
	}
	else
	{	
		return true;
	}
}