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 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 validRequiredTickbox(formField,fieldLabel){	var result = true;	if (formField.checked != true)	{		alert('You must tick the "' + fieldLabel +'" field.');		formField.focus();		result = false;	}	return result;}function selectRequired(formField,fieldLabel){	var result = true;	if (formField.selectedIndex  == "0")	{		alert('Please select an option for the "' + fieldLabel +'" field.');		formField.focus();		result = false;	}	return result;}function allDigits(str){	return inValidCharSet(str,"0123456789");}function allDigitsPlus(str){	return inValidCharSet(str,"0123456789.");}function allAlpha(str){	return inValidCharSet(str,"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-_@");}function alphanumeric(formField,fieldLabel){	var result = true; 		if (!allAlpha(formField.value)) 		{ 			alert('Please enter a value for the "' + fieldLabel +'" field using only numbers, letters, and (-), (_), (@) or (.)');			formField.focus();					result = false;		}	return result;}function inValidCharSet(str,charset){	var result = true;	// Note: doesn't use regular expressions to avoid early Mac browser bugs		for (var i=0;i<str.length;i++)		if (charset.indexOf(str.substr(i,1))<0)		{			result = false;			break;		}	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: yourname@yourdomain.com for the "' + fieldLabel +'" field.');		formField.focus();		result = false;	}  return result;}function validNum(formField,fieldLabel,required){	var result = true;	if (required && !validRequired(formField,fieldLabel))		result = false; 	if (result) 	{ 		if (!allDigits(formField.value)) 		{ 			alert('Please enter a number for the "' + fieldLabel +'" field.');			formField.focus();					result = false;		}	} 	return result;}function validDecimal(formField,fieldLabel,required){	var result = true;	if (required && !validRequired(formField,fieldLabel))		result = false; 	if (result) 	{ 		if (!allDigitsPlus(formField.value)) 		{ 			alert('Please enter a number for the "' + fieldLabel +'" field.');			formField.focus();					result = false;		}	} 	return result;}function validInt(formField,fieldLabel,required){	var result = true;	if (required && !validRequired(formField,fieldLabel))		result = false; 	if (result) 	{ 		var num = parseInt(formField.value); 		if (isNaN(num)) 		{ 			alert('Please enter a number for the "' + fieldLabel +'" field.');			formField.focus();					result = false;		}	} 	return result;}function validMatch(formField1,fieldLabel1,formField2,fieldLabel2){	var result = true;	if (formField1.value != formField2.value)	{		alert('The field "' + fieldLabel1 + '" must match the field "' + fieldLabel2 +'".');		formField1.focus();				result = false;	}	return result;}function validDependent(formField1,fieldLabel1,formField2,fieldLabel2){	var result = true;	if (formField1.checked == true && formField2.value == "0")	{		alert('You have ticked the field "' + fieldLabel1 + '" and so must select an option from the field "' + fieldLabel2 +'".');		formField2.focus();				result = false;	}	return result;}
