<!--
// HTML Form checking code
//allow only numbers
//onKeypress='if ( event.keyCode < 48 || event.keyCode > 57 ) event.returnValue = false;'

//allow only numbers and decimal
//onKeypress='if ( event.keyCode == 47 || event.keyCode < 46 || event.keyCode > 57 ) event.returnValue = false;'

//allow only numbers and  hyphen
//onKeypress='if (event.keyCode == 46 || event.keyCode == 47 || event.keyCode < 45 || event.keyCode > 57 ) event.returnValue = false;'

//allow only numbers, decimal, hyphen
//onKeypress='if ( event.keyCode == 47 || event.keyCode < 45 || event.keyCode > 57 ) event.returnValue = false;'

//field.value = field.value.toString().replace(/^0*/g,'') ; //replace leading zeros
//removing trailing zeros

//alert if Netscape is Browser
//if(document.all) {}	//IE	
//else alert("Netscape was detected as your Browser. Some features will not work with Netscape. Internet Explorer is required.")

//code to prevent enter key from submitting form
netscape = "";
ver = navigator.appVersion; len = ver.length;
for(iln = 0; iln < len; iln++) if (ver.charAt(iln) == "(") break;
netscape = (ver.charAt(iln+1).toUpperCase() != "C");

document.onkeydown = keyDown; // work together to analyze keystrokes
if (netscape) document.captureEvents(Event.KEYDOWN|Event.KEYUP);

function keyDown(DnEvents) { // handles keypress
	// determines whether Netscape or Internet Explorer
	k = (netscape) ? DnEvents.which : window.event.keyCode;
	if (k == 13) { // enter key pressed
		return false;
   }
}

function setfocusfirsttextelement() {
//set focus to first text element on HTML form
	if(document.forms[0].length>0 && document.forms[0].elements.length>0)
		
		for(var i=0;i< document.forms[0].elements.length;i++){
  		if(document.forms[0].elements[i].type == 'text'){
    		document.forms[0].elements[i].focus();
	    	break;
  	 	}		
		}
//	 	document.forms[0].elements[0].focus(); // delete for loop and us this for first element
}

function isEmpty(passedValue) {
	if(passedValue.length == 0) {return true;}
	if (passedValue == "") {return true;}
	return false
}

function isBlank(passedVal) {
	for (i=0; i<passedVal.length; i++) {
		if (passedVal.charAt(i) != " ") {	return false; }
	}
	return true
}

function isNum(passedVal) {
	if (passedVal.length == 0) { return false; }
	for (i=0; i<passedVal.length; i++) {
		if (passedVal.charAt(i) < "0") {return false;	}
		if (passedVal.charAt(i) > "9") {return false; }
	}
	return true
}

function validChar(thefield) {
// returns false if finds invalid character in string
	invalidValues = "\"\'()";     // invalid characters
	var strPass = thefield.value;
	var strLength = strPass.length;
	var i;
	for (i = 0; i < strLength; i++) {  
		var c = strPass.charAt(i);
		if (invalidValues.indexOf(c) != -1) {	return false;	}		
	}
	return true;
}

function isValidString(fieldObject) 
{
	//checks for valid string entries from html form field
		if (isEmpty(fieldObject.value) || isBlank(fieldObject.value)) 
		{
			alert("Data is required for this field.");
			fieldObject.focus();
			return false;
		}
	return true;
}

function isValidNumber(fieldObject) {
	//checks for valid number entries on html form
		if ( !isNum(fieldObject.value) ) {
			alert("A whole number (integer) is required. Enter 0 for no value. \n\rOnly digits are permitted, no other characters. \n\rIf you entered a decimal or fraction please round to a whole number.");
			fieldObject.focus();
			return false;
	}
	return true;
}

function isValidMoney(fieldObject) {
	//checks for valid string entries on html form
		if (!isMoneyField(fieldObject.value)) {
			alert("Entry is not a valid number. Must be numbers and decimal point only. \n\rMaximum of 2 digits to right of decimal.\n\rEnter 0 for no amount. Blank entry not permitted.");
			fieldObject.focus();
			return false;
		}
		return true;
}

function isMoneyField(fieldValue) {
	//checks an entry as money 
	var decallowed = 2;  // max num of digits to right of decimal
	//	if(parseFloat(fieldValue) != fieldValue) 
	//		fieldValue = fieldValue.toString().replace(/,/g,'') ; //replace commas
		if (isNaN(fieldValue) || fieldValue == "") {	
			return false;
		}
	else {
		if (fieldValue.indexOf('.') == -1) fieldValue += "."; //add decimal
		dectext = fieldValue.substring(fieldValue.indexOf('.')+1, fieldValue.length);

		if (dectext.length > decallowed) return false;
	}
	return true;
}

function validDollars(fieldObject) {
	//fieldname from html form: prevents empty field or non numberic characters
	if (fieldObject.value == "" || !isNum(fieldObject.value)){
		alert("You must enter a dollar amount. Enter 0 if no dollars. Commas and decimal point not permitted.")			
		fieldObject.focus();
		return false;
	}
	return true;
}
	
function validCents(fieldObject) {
	//fieldname from html form: prevents empty field or non numberic characters
	if (fieldObject.value == "" || !isNum(fieldObject.value)){
		alert("You must enter a cents amount. Enter 0 if no cents. Decimal point not permitted.")
		fieldObject.focus();
		return false;
	}
	return true;
}

function isValidCreditCard(passedVal) {
	//allows digits and - 'max lenght 19, need 15 digits (Amex)
	var numdigits = 0;
	if (passedVal.length == 0) { return false; }
	for (i=0; i<passedVal.length; i++) {			
		if (passedVal.charAt(i) < "0") {
			if (passedVal.charAt(i) != "-") 
				return false;	
			else 
				numdigits -= 1;
		}
		if (passedVal.charAt(i) > "9") {return false; }
		numdigits += 1;
	}
	if( numdigits == 15 || numdigits == 16 ) return true;
	return false;
}

function validEmail(passedValue) {
	invalidChars = " /:,;"
	if (passedValue.length == 0) { return false; }
	for (i=0; i<invalidChars.length; i++) {
		badChar = invalidChars.charAt(i)
		if (passedValue.indexOf(badChar,0) > -1) { return false; }
	}
	atPos = passedValue.indexOf("@",1)
	if (atPos == -1) {	return false;	}
	if (passedValue.indexOf("@",atPos+1) > -1) { return false; }
	periodPos = passedValue.indexOf(".",atPos)
	if (periodPos == -1) { return false;	}
	if (periodPos+3 > passedValue.length)	{	return false;}
	return true;
}

function validWebsite(passedValue) {
//only checking for .xxx could check for valid extensions com, org, gov, ect.
// not all sites start with www
	periodPos = passedValue.indexOf(".",atPos)
	if (periodPos == -1) { return false;	}
	if (periodPos+3 > passedValue.length)	{	return false;}
	return true;
}

function validZip(passedValue) {
	if(passedValue.length > 5){	return false;	}
	if (isNum(passedValue)) {	return true; }
	return false
}

function selectedOne(formName) {
	if(formName.selection.selectedIndex == 0)
	{
		alert("Please make a selection.");
		formName.selection.focus();
		return false;
	}
	return true;
}

function formatCurrency(num) {
	//formats num to x,xxx.xx -need to remove , when perform operations on number
	if(isNaN(num)) num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001); //rounds
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10) cents = "0" + cents;
	//for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	//	num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3));
return (((sign)?'':'-') + num + '.' + cents);
}
// -->
