


/******************************************
FUNCTION TO CHECK IF ENTRY IS ALPHANUMERIC
*******************************************/
function CheckChars(stringLen, theValue)
{

	var alphabeta = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ- ";

	var outcome = 0;
	var tempChar;

	for(i=0; i<stringLen; i++)
	{
		tempChar = theValue.charAt(i);
		theIndex = alphabeta.indexOf(tempChar);

		//alert("theIndex: " + theIndex)

		if (theIndex == -1)
		{
			//alert ("here");
			var outcome = -1;
			break;
		}
	}

	//alert ("outcome: " + outcome);
	return outcome;
}



/******************************************
FUNCTION TO CHECK IF ENTRY IS LIKE TEL NO
*******************************************/
function CheckTelChars(stringLen, theValue)
{

	var alphabeta = "1234567890()-+";

	var outcome = "";
	var tempChar;

	for(i=0; i<stringLen; i++)
	{
		tempChar = theValue.charAt(i);
		theIndex = alphabeta.indexOf(tempChar);

		//alert("theIndex: " + theIndex)

		if (theIndex == -1)
		{
			//alert ("here");
			outcome = tempChar;
			break;
		}
	}

	//alert ("outcome: " + outcome);
	return outcome;
}


/************************************************************
FUNCTION TO VALIDATE ALL OF FORM (UTILISING OTHER FUNCTIONS)
*************************************************************/
function CheckForm(obj)
{

	if (obj.theName.value  == "")
	{
		alert("Please provide your name.");
		obj.theName.focus();
		return false;
	}

	if (obj.theName.value  != "")
	{
		var userLen = obj.theName.value.length;
		var userCharCheck = CheckChars(userLen, obj.theName.value);

		if(userCharCheck == -1)
		{
			alert("Please use only letters for your name.");
			obj.theName.focus();
			return false;
		}
	}

	if ((obj.email.value  == "")&&(obj.telno.value  == ""))
	{
		alert("Please provide an email address or telephone number.");
		obj.email.focus();
		return false;
	}
	else
	{	
		if (obj.telno.value  != "")
		{
			var userLen = obj.telno.value.length;
			var userCharCheck = CheckTelChars(userLen, obj.telno.value);

			if(userCharCheck.length > 0)
			{
				alert("Please do not use " + userCharCheck + " in telephone numbers.");
				obj.telno.value="";
				obj.telno.focus();
				return false;
			}
		}
		
		var emailPat = /^(.+)@(.+)$/
		var matchArray = obj.email.value.match(emailPat)
		if ((obj.email.value  != "") && (matchArray == null))
		{
		  //Too many/few @'s or something; basically, this address doesn't
		  //even fit the general mould of a valid e-mail address.

			alert("Email address seems incorrect (check @ and .'s)")
			obj.email.focus();
			return false;
		}
	}
	
	if(obj.message.value  == "")
	{
		alert("Please provide your message.");
		obj.message.focus();
		return false;
	}
	

	


	
	obj.submit();
	

}


