// i shamelessly bogarted this from thuncan //
function isNumber(num)
{
	var result = false;
    var quesnum = new String(num);
    if((quesnum == "0") || (quesnum == "1") || (quesnum == "2") ||
    	(quesnum == "3") || (quesnum == "4") || (quesnum == "5") ||
        (quesnum == "6") || (quesnum == "7") || (quesnum == "8") ||
        (quesnum == "9")) 
        {
        	result = true;
        }
    return result;
}

function verifyPhone(phone)
{
	var result = false;
	var phonStr = new String(phone);
	var num = 0;
	for (i = 0; i < phonStr.length; i++)
	{
		if(isNumber(phonStr.substr(i,1)))
		{
			num++;
		}
	}
	if(num >= 10)
	{
		result = true;
	}
	return result;
}

function validPhone(formField,fieldLabel)
{
	var result = true;
	if((formField.value == "") || (!verifyPhone(formField.value)))
	{
		alert("Please enter a valid 10 digit telephone number.\nExample:  (828) 555-5555");
		formField.focus();
		result = false;
	}
	return result;
}

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 validEmail(formField,fieldLabel,required)
{
	var result = true;
	if (required && !validRequired(formField,fieldLabel)) result = false;
	if (result && ((formField.value.length < 3) || !isEmailAddr(formField.value)))
	{
		alert("Please enter a complete email address in the form: samplename@sampledomain.com");
		formField.focus();
		result = false;
	}
	return result;
}

function validRequired(formField,fieldLabel)
{
	var result = true;
	if (formField.value == "")
	{
		alert('Please enter a value for the "' + fieldLabel +'" field.');
		formField.focus();
		result = false;
	}
	return result;
}

function validateForm(theForm)
{
	if (!validRequired(theForm.txtName,"Name")) return false;
	if (!validEmail(theForm.txtEmail,"Email Address",true)) return false;
	if (!validPhone(theForm.txtPhoneW,"Telephone Number")) return false;
	return true;
}