/*-----------------
   Configuration
-----------------*/

var signupMessage = "Enter your email address to join the newsletter!";
var errorMessage = "Please enter a valid email address.";

/*------------------
   Focus Handlers
------------------*/
function mailingListLoad() {
	document.getElementById("mailingListSignup").value = signupMessage;
}

function mailingListFocus() {
	element = document.getElementById("mailingListSignup");
	if (element.value == signupMessage) element.value = "";
	else element.select();
}

function mailingListBlur() {
	element = document.getElementById("mailingListSignup");
	if ((element.value == null) || (element.value == "")) element.value = signupMessage;
}

function submitmailingListSignup() {
	element = document.getElementById("mailingListSignup");
	if (isValidEmail(element.value)) {
		document.forms['mailingListSignup'].submit();
	}
}

/*--------------
   Validation
--------------*/

function isValidEmail(email) {

	if ((email == null) || (email == "")) {
		alert(errorMessage);
		element.focus();
		return false;
	}

	var lat = email.indexOf("@");
	var lstr = email.length;
	var ldot = email.indexOf(".");
	
	if (email.indexOf("@") == -1) {
		alert(errorMessage);
		return false;
	}

	if (email.indexOf("@") == -1 || email.indexOf("@") == 0 || email.indexOf("@") == lstr) {
		alert(errorMessage);
		return false;
	}

	if (email.indexOf(".") == -1 || email.indexOf(".") == 0 || email.indexOf(".") == lstr) {
		alert(errorMessage);
		return false;
	}

	if (email.indexOf("@", (lat + 1)) != -1) {
		alert(errorMessage);
		return false;
	}

	if (email.substring(lat - 1, lat)=="." || email.substring(lat + 1, lat + 2) == ".") {
		alert(errorMessage);
		return false;
	}

	if (email.indexOf(".", (lat + 2)) == -1) {
		alert(errorMessage);
		return false;
	}
	
	if (email.indexOf(" ") != -1 ) {
		alert($errorMessage);
		return false;
	}

	return true;			
}