  function Validate_Email_Address(email_address)
  {
	//Assumes that valid email addresses consist of user_name@domain.tld
	at = email_address.indexOf('@');
	dot = email_address.indexOf('.');

	if(at == -1 || dot == -1 || dot == at + 1 || dot == 0 || dot == email_address.length - 1)
		return(false);

	user_name = email_address.substr(0, at);
	domain_name = email_address.substr(at + 1, email_address.length);                  

	valid_chars = '1234567890-_.^~abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';

	if(Validate_String(user_name, valid_chars) === false || Validate_String(domain_name, valid_chars) === false) 
		return(false);                     

	return(true);
  }

  function Validate_String(string, strValidChar, return_invalid_chars)
  {
	
	invalid_chars = '';

	if(string == null || string == '')
		return(true);

	//For every character on the string.   
	for(index = 0; index < string.length; index++)
	{
		letter = string.substr(index, 1);                        

		//Is it a valid character?
		if(strValidChar.indexOf(letter) == -1)
		{
			//If not, is it already on the list of invalid characters?
			if(invalid_chars.indexOf(letter) == -1)
			{
				//If it's not, add it.
				if(invalid_chars == '')
					invalid_chars += letter;
				else
					invalid_chars += ', ' + letter;
			}
		}
	}                     

	//If the string does not contain invalid characters, the function will return true.
	//If it does, it will either return false or a list of the invalid characters used
	//in the string, depending on the value of the second parameter.
	if(return_invalid_chars == true && invalid_chars != '')
	{
		last_comma = invalid_chars.lastIndexOf(',');

		if(last_comma != -1)
			invalid_chars = invalid_chars.substr(0, $last_comma) +	' and ' + invalid_chars.substr(last_comma + 1, invalid_chars.length);

		return(invalid_chars);
	}
	else
		return(invalid_chars == ''); 
  }
  
  function IsNumeric(strString)
  {
	var strValidChars = "0123456789";
	var strChar;
	var blnResult = true;

	//  test strString consists of valid characters listed above
	for (i = 0; i < strString.length && blnResult == true; i++)
	{
		strChar = strString.charAt(i);
		if (strValidChars.indexOf(strChar) == -1)
		{
			blnResult = false;
		}
	}
	return blnResult;
  }