// =================================================================
// File : 	stdInclude.js
// Author: 	yb
// Date:	Oct 14, 1998
// Desc:	standard JS include containing lib functions
// .................................................................
// define some global variables
var theMessage="";
// .................................................................
// add a string to the global variable theMessage
function AddMessage(theString) {
	theMessage=theMessage + theString;
}
// .................................................................
// strip the parameter of leading and trailing blanks
function StripSpaces(theString) {
	var aString=theString;
	//remove leading spaces
	while (aString.length > 0) {
		if (aString.charAt(0)==" ") {
			aString=aString.substring(1, aString.length);
		} else {
			break;
		}
	}
	//remove trailing spaces
	while (aString.length > 0) {
		if (aString.charAt(aString.length - 1)==" ") {
			aString=aString.substring(0, aString.length - 1);
		} else {
			break;
		}
	}
	return aString;
}
// .................................................................
// check if the email address is valid
// by checking for string@string.string[.string ...]
function CheckEmailAddress(theAddress)
{
	var anAddress="";
	var atPosition=-1;
	var aUsername="";
	var aDomainname="";
	var dotPosition=-1;
	var noError=true;
	var aMessage="* Expected email address is username@domain.name\n";
	// strip the parameter of leading and trailing blanks
	anAddress=StripSpaces(theAddress);
	if(anAddress.length==0) {
		aMessage=aMessage+"\t- No email address entered\n";
		noError = false;
	} else {
		// check for position of @
		atPosition=parseInt(anAddress.indexOf("@"));
		if(atPosition==-1) {
			aMessage=aMessage+"\t- No @ found in email address\n";
			noError = false;
		} else {
			aUserName=anAddress.substring(0,atPosition);
			if (aUserName=="") {
				aMessage=aMessage+"\t- No user name in email address\n";
				noError = false;
			} else {
				aDomainName=anAddress.substring(atPosition+1,anAddress.length);
				dotPosition=parseInt(aDomainName.lastIndexOf("."));
				if (dotPosition < 2 || dotPosition>aDomainName.length - 3) {
					aMessage=aMessage+"\t- Invalid domain name in email address\n";
					noError = false;
				}
			}
		}
	}
	if (!noError) AddMessage(aMessage);
	return noError;
//	changes required
//		check for one and only one @
//		check that 'dots' are separated by at least 2 chars from each other, @, end
//		check that 'dot' occurs at least 1 char from beginning
//		possibly include a list of valid TLDs
}
// =================================================================
