//---------------------------------------------------
var oPatterns = new Object();
var oErrors = new Object();

oPatterns.adInteger = /^[0-9]+$/;
oErrors.adInteger = "Numerics is required format."

oPatterns.adEmail = /@./;
oErrors.adEmail = "Email requires . and @ characters."

oPatterns.adDate = /^((01|1|03|3|05|5|07|7|09|9|11)\/([1-9]|[0-2][0-9]|3[0-1])\/([1-2][0-9]{3})$)|((04|4|06|6|08|8|10|12)\/([1-9]|[0-2][0-9]|30)\/([1-2][0-9]{3})$)|(2|02\/([1-9]|1[0-9]|2[0-8])\/([1-2][0-9]{3})$)/;
oErrors.adDate = "mm/dd/yyyy is required format."

oPatterns.adChar = /^.+/;
oErrors.adChar = "Enter at least one character."

oPatterns.adBoolean = /^[0-1]+/;
oErrors.adBoolean = "True/False not set."

oPatterns.zipPat = /^\d{5}(-\d{4})?$/;
oErrors.zipPat = "99999-9999 is required format."



oPatterns.currencyPat = /^-?\$?(\d{1,3},?(\d{3},?)*\d{3}(\.\d{0,2})?|\d{1,3}(\.\d{0,2})?|\.\d{1,2}?)$/; // $1.99 | 1.99 | .99
//oPatterns.currencyPat = /^(-)?\d{1,3}(,\d{3})*\.\d{2}$/; // matches 17.23 or 14,281,545.45 or ...
//oPatterns.currencyPat = /^\d{1,6}*\.\d{2}$/; 
oErrors.currencyPat = "-$99,999.99 is required format.";

oPatterns.timePat=/^([1-9]|0[1-9]|1[0-9]|2[0-3]):([0-5][0-9])/; // matches 5:04 or 12:34 but not 75:83
oErrors.timePat = "99:99 is required format."

//---------------------------------------------------
function validateElement(thisElement, elementType, elementName) {
var oPattern = oPatterns[elementType];   // select the validating regular expr
var value
if (thisElement.type=='select-one') {
	value = thisElement.options[thisElement.selectedIndex].value
	}
else {
	value = thisElement.value
	}
var bMatched = oPattern.exec(value); // test the value against the expression
if(!bMatched){
	alert(elementName + " value='" + value + "' is not valid. " + oErrors[elementType])
	thisElement.focus()
	return false }
return true
}

//capture the enter key
//call expected Validate()
//only if form='thisForm' and button name="save"
//nn=(document.layers)?true:false;
//ie=(document.all)?true:false;
//function keyDown(e) {
//	var evt=(e)?e:(window.event)?window.event:null;
//	if(evt){
//		var key=(evt.charCode)?evt.charCode:
//			((evt.keyCode)?evt.keyCode:((evt.which)?evt.which:0));
//		if (key=="13") {
//			if (document.forms.length==1) {
//				//if there are 2 forms dont submit
//				var oForm = document.forms[0]
//				var saveButtons = 0
//				for(i=0; i<oForm.elements.length; i++) {
//					if (oForm.elements[i].type=='button' && oForm.elements[i].name=='save') {
///						saveButtons += 1;
//					}
//				}
//				//if there are more than 1 submit button dont submit
//				//if (saveButtons==1) Validate(); //disable for now
//			}
//		}
//	}
//}
//document.onkeydown=keyDown;
//if(nn) document.captureEvents(Event.KEYDOWN);

