
    function checkValidNumOnForm(form)
    {

	if(!validNumber(form.laborCostPerHour.value))
	{
		alert("Please enter a valid number.");
		form.laborCostPerHour.focus();
		return false;
	}else if(!validNumber(form.samplesPerDay.value)){
		alert("Please enter a valid number.");
		form.samplesPerDay.focus();
		return false;
	}else if(!validNumber(form.numberOfLaborHours.value)){
		alert("Please enter a valid number.");
		form.numberOfLaborHours.focus();
		return false;
	}else if(!validNumber(form.totalDaysPerCycle.value)){
		alert("Please enter a valid number.");
		form.totalDaysPerCycle.focus();
		return false;
	}else if(!validNumber(form.numberOfCyclesPerYear.value)){
		alert("Please enter a valid number.");
		form.numberOfCyclesPerYear.focus();
		return false;
	}else if(!validNumber(form.o_samplesPerDay.value)){
		alert("Please enter a valid number.");
		form.o_samplesPerDay.focus();
		return false;
	}else if(getSelectedIndex() == 0){
		alert("Please select a reactor number.");
		form.SelNumReactor.focus();
		return false;
	}else if(!isFilled(form.personName.value)){
		alert("Please enter your name.");
		form.personName.focus();
		return false;
	}else if(!isFilled(form.comName.value)){
		alert("Please enter your company's name.");
		form.comName.focus();
		return false;
	}else if(!isValidEmail(form.email.value)){
		alert("Please enter your email address.");
		form.email.focus();
		return false;
	}
	return true;

    }

function getSelectedIndex()
{
	var selObj = document.getElementById('SelNumReactor');
	var selIndex = selObj.selectedIndex;
	return selIndex;
}

function validNumber_old(thestr)
{
	var alph_valid = "0123456789.";
	var num_valid = "0123456789";

	if(thestr.length == 0){	
		return false;
	}else{
		if(containCharacters(thestr, alph_valid)){
			dotPos = thestr.indexOf(".") + 1;
			if(thestr.length - dotPos == 0){
				return false;
			}else if(thestr.length == 1 && !containCharacters(thestr, num_valid)){
				alert("thestr is not number");
				return false;
			}
			return true;
		}else{
			return false;
		}	
		
	}
}

function validNumberTyping(str)
{
	var pattern1 = /^([0-9]{1,})$/ ;
	var pattern2 = /([0-9]{1,})(\.)$/ ;
	var pattern3 = /([0-9]{1,})[\.]([0-9]{1,})$/ ;
	
	if(pattern1.test(str) ){
		return true;
	}else if(pattern2.test(str) ){	
		return true;
	}else if(pattern3.test(str) ){	
		return true;
	}else{
		return false;
	}			
}

// only format: xx or xx.xx is valid
function validNumber(str)
{
	var pattern1 = /^([0-9]{1,})$/ ;
	var pattern3 = /([0-9]{1,})[\.]([0-9]{1,})$/ ;
	
	if(pattern1.test(str) ){
		return true;
	}else if(pattern3.test(str) ){	
		return true;
	}else{
		return false;
	}			
}

	
function containCharacters(thestr, alph_valid)
{   	
	var flag = true;
	for (var i=0; i<thestr.length; i++) {
        	if (alph_valid.indexOf(thestr.charAt(i)) < 0) {
            		flag = false;
        	}
    	}
	return flag;
}

function reset_now(form)
{	
	form.laborCostPerHour.value = "";
	form.samplesPerDay.value = "";
	form.o_samplesPerDay.value = "";
	form.numberOfReactors.value = "";
	form.numberOfLaborHours.value = "";
	form.totalDaysPerCycle.value = "";
	form.numberOfCyclesPerYear.value = "";
	//document.getElementById("annualRateOfReturn").innerHTML = "";
}

function fillNumberA(x)
{
	var y = document.getElementById(x).value;
	if(y.length == 0){	
		return false;
	}

	if(!validNumberTyping(y))
	{
		alert("Please enter a valid number.");
		document.getElementById(x).value = "";
	}else{
		document.calForm.o_laborCostPerHour.value = y;
	}
}

function fillNumberB(x)
{
	var y = document.getElementById(x).value;
	if(y.length == 0){	
		return false;
	}
	if(!validNumberTyping(y))
	{
		alert("Please enter a valid number.");
		document.getElementById(x).value = "";
	}
}
function fillNumberB2(x)
{
	var y = document.getElementById(x).value;
	if(y.length == 0){	
		return false;
	}
	if(!validNumberTyping(y))
	{
		alert("Please enter a valid number.");
		document.getElementById(x).value = "";
	}
}

function fillNumberD(x)
{
	var y = document.getElementById(x).value;
	if(y.length == 0){	
		return false;
	}
	if(!validNumberTyping(y))
	{
		alert("Please enter a valid number.");
		document.getElementById(x).value = "";
	}else{
		document.calForm.o_numberOfLaborHours.value = y;
	}
}

function fillNumberE(x)
{
	var y = document.getElementById(x).value;
	if(y.length == 0){	
		return false;
	}
	if(!validNumberTyping(y))
	{
		alert("Please enter a valid number.");
		document.getElementById(x).value = "";
	}else{
		document.calForm.o_totalDaysPerCycle.value = y;
	}
}

function fillNumberF(x)
{
	var y = document.getElementById(x).value;
	if(y.length == 0){	
		return false;
	}
	if(!validNumberTyping(y))
	{
		alert("Please enter a valid number.");
		document.getElementById(x).value = "";
	}else{
		document.calForm.o_numberOfCyclesPerYear.value = y;
	}
}

function setSelectedText()
{
	var selObj = document.getElementById('SelNumReactor');
	var selIndex = selObj.selectedIndex;
  	var selValue = document.calForm.SelNumReactor.value;

	document.calForm.o_SelNumReactor.value = selValue;
	
}

function isFilled(str)
{
	if(str.length == 0){	
		return false;
	}
	return true;
}

function isValidEmail(str)
{
	if(str.length == 0){	
		return false;
	}
	return true;
}



