NLSignup = new Object ();
NLSignup.initFields = new Object ();

NLSignup.initField = function (fld) {
	fld.style.backgroundColor = "#EEF1E0";
	if (!this.initFields [fld.name]) {
		this.initFields [fld.name] = fld.value;
		fld.value = "";
	}
};

NLSignup.checkField = function (fld) {
	fld.style.backgroundColor = "#DDE3C0";
	if (fld.value == "" && this.initFields [fld.name]) {
		fld.value = this.initFields [fld.name];
		delete this.initFields [fld.name];
	}
};

NLSignup.checkForm = function (frm) {
	var hasName = true;
	var hasEmail = true;
	
	if (!this.initFields.Name || frm.Name.value == "") {
		if (this.initFields.Name) {
			this.checkField (frm.Name);
		}
		hasName = false;
	}
	
	if (!this.initFields.Email || frm.Email.value == "") {
		if (this.initFields.Email) {
			this.checkField (frm.Email);
		}
		hasEmail = false;
	}
	
	if (!hasName || !hasEmail) {
		if (!hasName && hasEmail) {
			window.alert ("Please enter your name."); 
		} else if (hasName && !hasEmail) {
			window.alert ("Please enter your email address.");
		} else {
			window.alert ("Please enter your name and email address.");
		}
		
		return false;
	}
	
	var val = frm.Email.value;
	var atIndex = (val.indexOf ("@") == val.lastIndexOf ("@") ? val.indexOf ("@") : -1);
	var dotIndex = (val.lastIndexOf (".") > atIndex ? val.lastIndexOf (".") : -1);
	var spaceIndex = val.indexOf (" ");
	var slashIndex = val.indexOf ("/");
	var bSlashIndex = val.indexOf ("\\");
	
	if (atIndex > 0 && dotIndex > 0 && spaceIndex < 0 && slashIndex < 0 && bSlashIndex < 0) return true;
	else {
		window.alert ("The email address you have entered does not appear to be formatted properly.  Please correct your entry and try again.");
		return false;
	}
};

