var aryRequired = new Array();
var intArrayCount = 0;

function defineRequired(strElementName, strDisplayMessage, blnIsEmail, blnIsNumber) {
	var objRequired = new Object();
	objRequired.ElementName = strElementName;
	objRequired.DisplayMessage = strDisplayMessage;
	objRequired.IsEmail = blnIsEmail;
	objRequired.IsNumber = blnIsNumber;
	aryRequired[intArrayCount] = objRequired;
	intArrayCount++;
}
function checkForm(objForm) {
	//web tv bug fix
	if (navigator.userAgent.indexOf("WebTV") == -1) {
		for (var i = 0; i < aryRequired.length; i++) {
			var blnFail = true;
			var objElement = eval("objForm." + aryRequired[i].ElementName);
			if (objElement.length && !objElement.type && document.images) {
				//looping through element array
				for (var x = 0; x < objElement.length; x++) {
					if (objElement[x].checked && objElement[x].value != "") blnFail = false;
				}
			} else {
			if (objElement.value != "") {
				if (aryRequired[i].IsEmail) { if (CheckEmail(objElement.value)) blnFail = false; }
				else if (aryRequired[i].IsNumber) { if (!isNaN(objElement.value)) blnFail = false; }
				else blnFail = false;
			}
		}
			if (blnFail) {
				alert(aryRequired[i].DisplayMessage);
				if (objElement.length && !objElement.type) objElement[0].focus();
				else objElement.focus();
				return false;
			}
		}
	// all elements passed, submit form
	}
	return true;
}
function CheckEmail(strData) {
	var posAt = strData.indexOf("@")
	var strName = strData.substring(0, posAt)
	var strDomain = strData.substring(posAt+1, strData.length)
	var posDot = strDomain.indexOf(".")
	var strSubDomain = strDomain.substring(posDot+2,strDomain.length)
	if ( strName=="" || strDomain=="" || posDot < 1 || strSubDomain =="") return false;
	else return true;
}