var emailexp = /(.*)\@(.*)\.(.*)/;
var emailsp = /\s/;
var dataexp = /[^0-9\.-]/;
function VerifyApplications() {
	var counter = 0;
	var selectedApps = 0;
	var lengthTest = typeof document.BizCaseData.strIncludeApps.length;
	if (lengthTest == "undefined") {
		if (document.BizCaseData.strIncludeApps.checked) {
			selectedApps++;
		}
		if (selectedApps == 0) {
			alert("Please select at least one application from the list.")
			return false;
		}
		document.BizCaseData.submit();
	}
	else {
		for (counter = 0; counter < document.BizCaseData.strIncludeApps.length; counter++)
		{
			if (document.BizCaseData.strIncludeApps[counter].checked) {
				selectedApps++;
			}
		}
		if (selectedApps == 0) {
			alert("Please select at least one application from the list.")
			return false;
		}
		document.BizCaseData.submit();
	}
}
function selectAllCheckboxes() {
	var counter = 0;
	var lengthTest = typeof document.BizCaseData.strIncludeApps.length;
	if (lengthTest == "undefined") {
		if (document.BizCaseData.selectall.value == ' Check All ') {
			document.BizCaseData.strIncludeApps.checked = true;
			document.BizCaseData.selectall.value = ' Uncheck All ';
		}
		else {
			document.BizCaseData.strIncludeApps.checked = false;
			document.BizCaseData.selectall.value = ' Check All ';
		}
	}
	else {
		if (document.BizCaseData.selectall.value == ' Check All ') {
			for (counter = 0; counter < document.BizCaseData.strIncludeApps.length; counter++)
			{
				document.BizCaseData.strIncludeApps[counter].checked = true;
			}
			document.BizCaseData.selectall.value = ' Uncheck All ';
		}
		else {
			for (counter = 0; counter < document.BizCaseData.strIncludeApps.length; counter++)
			{
				document.BizCaseData.strIncludeApps[counter].checked = false;
			}
			document.BizCaseData.selectall.value = ' Check All ';
		}
	}
}
function infoAlert(infoText) {
	alert(infoText)
}
function isValid(pattern, str) {
	return pattern.test(str)
}
function clearevent(e) {
	var Key='';
	Key = window.event.keyCode;
	if (Key == 13) {
		event.returnValue = false;
		VerifyBizCaseData(document.BizCaseData)
	}
}
function validatefields(e) {
	var Key='';
	Key = window.event.keyCode;
	if (Key == 13) {
		event.returnValue = false;
		VerifyBizCaseData(document.BizCaseData)
	} 
	else if (Key < 45 || Key > 57 || Key == 47) {
		event.returnValue = false;
		alert("Please enter numbers only for this field");
	} 
}
function VerifyBizCaseData(what) {
	if (document.BizCaseData.MemberFirstName.value == "") {
		document.BizCaseData.MemberFirstName.focus()
		alert("Please enter your first name.")
		return false;
	}
	if (document.BizCaseData.MemberLastName.value == "") {
		document.BizCaseData.MemberLastName.focus()
		alert("Please enter your last name.")
		return false;
	}
	if (document.BizCaseData.MemberTitle.value == "") {
		document.BizCaseData.MemberTitle.focus()
		alert("Please enter your title.")
		return false;
	}
	if (document.BizCaseData.CustomerName.value == "") {
		document.BizCaseData.CustomerName.focus()
		alert("Please enter your company name.")
		return false;
	}
	if (document.BizCaseData.MemberPhone.value == "") {
		document.BizCaseData.MemberPhone.focus()
		alert("Please enter your phone number.")
		return false;
	}
	if (document.BizCaseData.MemberEmail.value == "") {
		document.BizCaseData.MemberEmail.focus()
		alert("Please enter your E-mail address.")
		return false;
	}
	if (!isValid(emailexp, document.BizCaseData.MemberEmail.value)) {
		document.BizCaseData.MemberEmail.focus()
		alert("Please enter a valid E-mail address")
		return false;
	}
	if (isValid(emailsp, document.BizCaseData.MemberEmail.value)) {
		document.BizCaseData.MemberEmail.focus()
		alert("Please enter a valid E-mail address")
		return false;
	}

	var arrayPercent = new Array();
	arrayPercent['Role1Act1Work'] = 'yes';
	arrayPercent['Role1Act2Work'] = 'yes';
	arrayPercent['Role1Discount'] = 'yes';
	arrayPercent['Role1ReduceDiscount'] = 'yes';
	arrayPercent['Role2Act1Work'] = 'yes';
	arrayPercent['Role2Act2Work'] = 'yes';
	arrayPercent['Role2Discount'] = 'yes';
	arrayPercent['Role2ReduceDiscount'] = 'yes';
	arrayPercent['Role3Act1Work'] = 'yes';
	arrayPercent['Role3Act2Work'] = 'yes';
	arrayPercent['Role3Discount'] = 'yes';
	arrayPercent['Role3ReduceDiscount'] = 'yes';
	arrayPercent['Role4Act1Work'] = 'yes';
	arrayPercent['Role4Act2Work'] = 'yes';
	arrayPercent['Role4Discount'] = 'yes';
	arrayPercent['Role4ReduceDiscount'] = 'yes';
	arrayPercent['Segment1BauRetention'] = 'yes';
	arrayPercent['Segment1PsRetention'] = 'yes';
	arrayPercent['Segment2BauRetention'] = 'yes';
	arrayPercent['Segment2PsRetention'] = 'yes';
	arrayPercent['Segment3BauRetention'] = 'yes';
	arrayPercent['Segment3PsRetention'] = 'yes';
	arrayPercent['Event1BauResponse'] = 'yes';
	arrayPercent['Event1BauConversion'] = 'yes';
	arrayPercent['Event1BauRetention'] = 'yes';
	arrayPercent['Event1PsResponse'] = 'yes';
	arrayPercent['Event1PsConversion'] = 'yes';
	arrayPercent['Event1PsRetention'] = 'yes';
	arrayPercent['Event2BauResponse'] = 'yes';
	arrayPercent['Event2BauConversion'] = 'yes';
	arrayPercent['Event2BauRetention'] = 'yes';
	arrayPercent['Event2PsResponse'] = 'yes';
	arrayPercent['Event2PsConversion'] = 'yes';
	arrayPercent['Event2PsRetention'] = 'yes';
	arrayPercent['Event3BauResponse'] = 'yes';
	arrayPercent['Event3BauConversion'] = 'yes';
	arrayPercent['Event3BauRetention'] = 'yes';
	arrayPercent['Event3PsResponse'] = 'yes';
	arrayPercent['Event3PsConversion'] = 'yes';
	arrayPercent['Event3PsRetention'] = 'yes';
	arrayPercent['Asset1ProjSavings'] = 'yes';
	arrayPercent['Asset2ProjSavings'] = 'yes';
	arrayPercent['Asset3ProjSavings'] = 'yes';

	var arrayBauPs = new Array();
	arrayBauPs['Segment1PsRetention'] = 'Segment1BauRetention';
	arrayBauPs['Segment1PsAvgSpending'] = 'Segment1BauAvgSpending';
	arrayBauPs['Segment2PsRetention'] = 'Segment2BauRetention';
	arrayBauPs['Segment2PsAvgSpending'] = 'Segment2BauAvgSpending';
	arrayBauPs['Segment3PsRetention'] = 'Segment3BauRetention';
	arrayBauPs['Segment3PsAvgSpending'] = 'Segment3BauAvgSpending';
	arrayBauPs['Event1PsResponse'] = 'Event1BauResponse';
	arrayBauPs['Event1PsConversion'] = 'Event1BauConversion';
	arrayBauPs['Event1PsRetention'] = 'Event1BauRetention';
	arrayBauPs['Event1PsAmount'] = 'Event1BauAmount';
	arrayBauPs['Event2PsResponse'] = 'Event2BauResponse';
	arrayBauPs['Event2PsConversion'] = 'Event2BauConversion';
	arrayBauPs['Event2PsRetention'] = 'Event2BauRetention';
	arrayBauPs['Event2PsAmount'] = 'Event2BauAmount';
	arrayBauPs['Event3PsResponse'] = 'Event3BauResponse';
	arrayBauPs['Event3PsConversion'] = 'Event3BauConversion';
	arrayBauPs['Event3PsRetention'] = 'Event3BauRetention';
	arrayBauPs['Event3PsAmount'] = 'Event3BauAmount';

	var arrayZero = new Array();
	arrayZero['Segment1BauRetention'] = 'Yes';
	arrayZero['Segment1PsRetention'] = 'Yes';
	arrayZero['Segment2BauRetention'] = 'Yes';
	arrayZero['Segment2PsRetention'] = 'Yes';
	arrayZero['Segment3BauRetention'] = 'Yes';
	arrayZero['Segment3PsRetention'] = 'Yes';
	arrayZero['Event1BauRetention'] = 'Yes';
	arrayZero['Event1PsRetention'] = 'Yes';
	arrayZero['Event2BauRetention'] = 'Yes';
	arrayZero['Event2PsRetention'] = 'Yes';
	arrayZero['Event2BauRetention'] = 'Yes';
	arrayZero['Event2PsRetention'] = 'Yes';
	arrayZero['Asset1YearlyGrowth'] = 'Yes';
	arrayZero['Asset2YearlyGrowth'] = 'Yes';
	arrayZero['Asset3YearlyGrowth'] = 'Yes';
	arrayZero['RiskAdjIncrCost'] = 'Yes';
	arrayZero['RiskAdjDecrSavings'] = 'Yes';

	var myName = '';
	var myType = '';
	var valid = true;
	for (var i=6, j=what.elements.length; i<j - 15; i++) {
		myType = what.elements[i].type;
		myName = what.elements[i].name;
		if (myType == 'text') {
			if (what.elements[i].value == what.elements[i].defaultValue) {
				valid = false;
				document.BizCaseData[myName].value = "Enter Data";
				document.BizCaseData[myName].select()
				document.BizCaseData[myName].focus()
				alert("Please enter data for this field")
				break;
			}
			if (isValid(dataexp, what.elements[i].value)) {
				valid = false;
				document.BizCaseData[myName].select()
				document.BizCaseData[myName].focus()
				alert("Please enter numbers only for this field")
				break;
			}
			if (what.elements[i].value < 0) {
				valid = false;
				document.BizCaseData[myName].select()
				document.BizCaseData[myName].focus()
				alert("Please enter a number that is 0 or greater for this field")
				break;
			}
			if (arrayPercent[myName]) {
				if (what.elements[i].value > 100) {
					valid = false;
					document.BizCaseData[myName].select()
					document.BizCaseData[myName].focus()
					alert("Please enter a number that is less than 100 for this field")
					break;
				}
			}
			if (myName == "Role1Closes" || myName == "Role2Closes" || myName == "Role3Closes" || myName == "Role4Closes") {
				var myString = new String(what.elements[i].value)
				if (myString.length > 13) {
					valid = false;
					document.BizCaseData[myName].select()
					document.BizCaseData[myName].focus()
					alert("Please enter a number that is less than 14 digits for this field")
					break;
				}
				splitNameString = myName.split("C")
				var myNameTwo = splitNameString[0] + 'ProdPrice';
				if (document.BizCaseData[myNameTwo]) {
					var myStringTwo = new String(document.BizCaseData[myNameTwo].value)
					if (myString.length + myStringTwo.length > 14) {
						var reduceDigitBy = (myString.length + myStringTwo.length) - 14;
						if (myString.length > myStringTwo.length) {
							valid = false;
							document.BizCaseData[myName].select()
							document.BizCaseData[myName].focus()
							alert('Please reduce the number in this field by ' + reduceDigitBy + ' digit')
							break;
						}
						else {
							valid = false;
							document.BizCaseData[myNameTwo].select()
							document.BizCaseData[myNameTwo].focus()
							alert('Please reduce the number in this field by ' + reduceDigitBy + ' digit')
							break;
						}
					}
				}
			}
			if (myName == "Role1ProdPrice" || myName == "Role2ProdPrice" || myName == "Role3ProdPrice" || myName == "Role4ProdPrice") {
				var myString = new String(what.elements[i].value)
				if (myString.length > 13) {
					valid = false;
					document.BizCaseData[myName].select()
					document.BizCaseData[myName].focus()
					alert("Please enter a number that is less than 14 digits for this field")
					break;
				}
			}
			if (myName == "Asset1NumUnits" || myName == "Asset2NumUnits" || myName == "Asset3NumUnits") {
				var myString = new String(what.elements[i].value)
				if (myString.length > 13) {
					valid = false;
					document.BizCaseData[myName].select()
					document.BizCaseData[myName].focus()
					alert("Please enter a number that is less than 14 digits for this field")
					break;
				}
				splitNameString = myName.split("C")
				var myNameTwo = splitNameString[0] + 'ProdPrice';
				if (document.BizCaseData[myNameTwo]) {
					var myStringTwo = new String(document.BizCaseData[myNameTwo].value)
					if (myString.length + myStringTwo.length > 14) {
						var reduceDigitBy = (myString.length + myStringTwo.length) - 14;
						if (myString.length > myStringTwo.length) {
							valid = false;
							document.BizCaseData[myName].select()
							document.BizCaseData[myName].focus()
							alert('Please reduce the number in this field by ' + reduceDigitBy + ' digit')
							break;
						}
						else {
							valid = false;
							document.BizCaseData[myNameTwo].select()
							document.BizCaseData[myNameTwo].focus()
							alert('Please reduce the number in this field by ' + reduceDigitBy + ' digit')
							break;
						}
					}
				}
			}
			if (myName == "Asset1UnitCost" || myName == "Asset2UnitCost" || myName == "Asset3UnitCost") {
				var myString = new String(what.elements[i].value)
				if (myString.length > 13) {
					valid = false;
					document.BizCaseData[myName].select()
					document.BizCaseData[myName].focus()
					alert("Please enter a number that is less than 14 digits for this field")
					break;
				}
			}
			if (arrayZero[myName]) {

			}
			else {
				if (what.elements[i].value < 1) {
					valid = false;
					document.BizCaseData[myName].select()
					document.BizCaseData[myName].focus()
					alert("Please enter a number that is greater than 0 for this field")
					break;
				}
			}
			if (arrayBauPs[myName]) {
				if (document.BizCaseData[arrayBauPs[myName]]) {
					var tempPS = what.elements[i].value;
					var tempBAU = document.BizCaseData[arrayBauPs[myName]].value;
					tempPS = tempPS * 1;
					tempBAU = tempBAU * 1;
					if (tempPS < tempBAU) {
						valid = false;
						document.BizCaseData[myName].select()
						document.BizCaseData[myName].focus()
						alert('Please enter a number that is greater than or equal to ' + tempBAU + ' for this field')
						break;
					}
				}
			}
		}
		if (myType == 'select-one') {
			if (what.elements[i].selectedIndex == 0) {
				valid = false;

				document.BizCaseData[myName].focus()
				alert("Please make a selection from this field")
				break;
			}
		}
		
	}
	if (valid == true) {
		impactReport();
	}
	else {
		return false;
	}

}
function submitBack(pagename) {
	var result;
	result = confirmBack();
	if (result == true) {
		if (document.images) {
			location.replace('http://www.proveit-webroi.net/' + pagename)
		}
		else {
			location.href = pagename;
		}
	}
	else {
		return;
	}
}
function confirmBack() {
	var result;
	result = confirm("WARNING! If you return to the previous page you will loss all of the data you have entered.");
	return result;
}
function impactReport() {
	var w = 640;
	var h = 480;
	myImpactWindow = window.open('loading.htm','impactwindow','width=' + w + ',height=' + h + ',resizable=yes,left=0,top=0,screenX=0,screenY=0,scrollbars=yes,menubar=yes')
	setTimeout("submitReport()",2000);
}
function submitReport() {
	document.BizCaseData.submit();
}