//	Form validation functions.
//	Dave Li
//-----------------------------------------------------------------------------
function validateInput(frm, mask) {
	var FrmLen = frm.elements.length;
	var maskarr = mask;
	for (var i = 0; i < FrmLen; i++)
	{
		//obtain the validation mask character
		maskarr = mask.substring(i,i+1)

		//Initialise local variables
		var valfirstname = 1;
		var vallastname = 1;
		var valtelenum = 1;
		var valemail = 1;

	if (maskarr == "f")
	{
		valfirstname = validateFirstname(frm.elements[i].value);
	}
	if (maskarr == "l")
	{
		vallastname = validateLastname(frm.elements[i].value);
	}
	if (maskarr == "p")
	{
		valtelenum = validateTeleNum(frm.elements[i].value);
	}
	if (maskarr == "e")
	{
		valemail = validateEmail(frm.elements[i].value);
	}

	if (! valfirstname)
	{
		alert("LIAR! Please enter your real name");
		putFocus(frm.elements[i]);
		return false;
	}
	if (! vallastname)
	{
		alert("Please enter your real name");
		putFocus(frm.elements[i]);
		return false;
	}
	if (! valtelenum)
	{
		alert("Please enter your real phone number");
		putFocus(frm.elements[i]);
		return false;
	}
	if (! valemail)
	{
		alert("Please enter your real email address");
		putFocus(frm.elements[i]);
		return false;
	}
	}
	return true;
}

function validateFirstname(s) {
	if (s.length > 1)
	{
		return true;
	}
	return false;
}

function validateLastname(s) {
	if (s.length > 1)
	{
		return true;
	}
	return false;
}

function validateTeleNum(s) {
	if (s.length > 6)
	{
		for (i = 0;  i < s.length;  i++)
 		{
		    	ch = s.charAt(i);
			if(! InStr(ch))
			{
			return false;
			}
		}
		return true;
	}
	return false;
}

function validateEmail(s) {
	if (s.length > 3)
	{
		// Return false if e-mail field does not contain a '@' and '.' .
		if (s.indexOf ('@',0) == -1 || s.indexOf ('.',0) == -1) {
			return false;
			}
		return true;
	}
	return false;
}

function InStr(c) {
	var checkOK = "0123456789-+-. ()\t\r\n\f";
	var ret  = false;

  		for (j = 0;  j < checkOK.length;  j++)
		{
      			if (c != checkOK.charAt(j))
			{
			continue;
			}
			else
			{
			ret = true;
			break;
			}
		}
	return ret;
}

function putFocus(elementStr) {
   elementStr.value="";
   elementStr.focus();
   }
