<!-- hide me

function checkEmail(objName)
{
	var emailfield = objName;
	if(objName.value!="") {
		if (isEmailAddr(objName.value) == false)
		{
			emailfield.select();
			emailfield.focus();
			alert("Please enter a valid email address");
			return false;
		}
		else
		{
			return true;
		}
	} else {
	return true;
	}
}
function isEmailAddr(email)
{
	
  var result = false;
  var theStr = new String(email);
  var index = theStr.indexOf("@");
  if (index > 0)
  {
    var pindex = theStr.indexOf(".",index);
    if ((pindex > index+1) && (theStr.length > pindex+1))
	result = true;
  }
  return result;
}
	
function checkPhone(objName)
{
	var phonefield = objName;
	if (chkNumeric(objName,"","","","+"," ") == false)
	{
		phonefield.select();
		phonefield.focus();
		return false;
	}
	else
	{
		return true;
	}
}

function checkNumber(objName)
{
	var numberfield = objName;
	if (chkNumeric(objName,"","","","","") == false)
	{
		numberfield.select();
		numberfield.focus();
		return false;
	}
	else
	{
		return true;
	}
}

function chkNumeric(objName,comma,period,hyphen,space,plus)
{
// only allow 0-9 be entered, plus any values passed
// (can be in any order, and don't have to be comma, period, or hyphen)
// if all numbers allow commas, periods, hyphens or whatever,
// just hard code it here and take out the passed parameters
var checkOK = "0123456789" + comma + period + hyphen + space + plus;
var checkStr = objName;
var allValid = true;
var decPoints = 0;
var allNum = "";

for (i = 0;  i < checkStr.value.length;  i++)
{
ch = checkStr.value.charAt(i);
for (j = 0;  j < checkOK.length;  j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
if (ch != ",")
allNum += ch;
}
if (!allValid)
	{	
	alertsay = "Please enter only the values \""
	//alertsay = alertsay + checkOK + "\" in the \"" + checkStr.name + "\" field."
	alertsay = alertsay + checkOK + "\" in this field."
	alert(alertsay);
	return (false);
	}
}

function isURL(argvalue) {

  if (argvalue.indexOf(" ") != -1)
    return false;
  else if (argvalue.indexOf("http://") == -1)
    return false;
  else if (argvalue == "http://")
    return false;
  else if (argvalue.indexOf("http://") > 0)
    return false;

  argvalue = argvalue.substring(7, argvalue.length);
  if (argvalue.indexOf(".") == -1)
    return false;
  else if (argvalue.indexOf(".") == 0)
    return false;
  else if (argvalue.charAt(argvalue.length - 1) == ".")
    return false;

  if (argvalue.indexOf("/") != -1) {
    argvalue = argvalue.substring(0, argvalue.indexOf("/"));
    if (argvalue.charAt(argvalue.length - 1) == ".")
      return false;
  }

  if (argvalue.indexOf(":") != -1) {
    if (argvalue.indexOf(":") == (argvalue.length - 1))
      return false;
    else if (argvalue.charAt(argvalue.indexOf(":") + 1) == ".")
      return false;
    argvalue = argvalue.substring(0, argvalue.indexOf(":"));
    if (argvalue.charAt(argvalue.length - 1) == ".")
      return false;
  }
  return true;
}

<!--unhide me -->