
var mm = "";

function setSSN(form) {
        var ssn = null
        var ssn = form.ssn1.value + "-" + form.ssn2.value + "-" + form.ssn3.value;
        form.required_ssn.value = ssn
        }

function setBank(form) {
var this_bank_code = null
this_bank_code = (form.bank_code.options[form.bank_code.selectedIndex].value)
if (this_bank_code) {
         var bank_codes = this_bank_code.split("|")
         form.required_bankname.value = bank_codes[0]
         form.required_bankrouting.value = bank_codes[1]
        }
else {  
         form.required_bankname.value = ""
         form.required_bankrouting.value = ""
         }
}

function validateBank(which) {
	var bank = which.value
	var lngth = bank.length
			if (lngth != 9) {
				alert("The Bank Routing Code must be exactly 9 digits.")
				select(which)
				return false
			}
	return true
}

function checkrequired(which) 
{
var pass=true;
if (document.images) 
	{
	for (i=0;i<which.length;i++) 
		{
		var tempobj=which.elements[i];
		if (tempobj.name.substring(0,8)=="required") 
			{
			if (((tempobj.type=="text"||tempobj.type=="textarea"||tempobj.type=="password")&&	tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&
			tempobj.selectedIndex==0)) 
				{
				pass=false;
				break;
		        }
		    }
		 }
	}
if (!pass) 
	{
	shortFieldName=tempobj.name.substring(9,30).toUpperCase();
	alert("Please make sure the "+shortFieldName+" field was properly completed.");
	return false;
	}
	
<!-- checkformdates(which) -->
	
<!-- check password -->
if (which.required_password1) {
	pw1 = which.required_password1.value;
	pw2 = which.required_password2.value;
	if (pw1 != pw2) 
		{
		alert ("\nYou did not enter the same new password twice. Please re-enter your password.")
		return false;
		}
	}
	
<!-- Check email -->
if (which.required_email) 
	{
				invalidChars = " /:,;"
			var email = which.required_email.value
			if (email == "") {						// cannot be empty
				alert("\nYou did not enter your email address.")
				return false
			}
			for (i=0; i<invalidChars.length; i++) {	// does it contain any invalid characters?
				badChar = invalidChars.charAt(i)
				if (email.indexOf(badChar,0) > -1) {
					alert("\nYour email address contains invalid characters. Please check it and correct it.")
					return false
				}
			}
			atPos = email.indexOf("@",1)			// there must be one "@" symbol
			if (atPos == -1) {
				alert("\nYour email address must contain one, but only one, @ character.")
				return false
			}
			if (email.indexOf("@",atPos+1) != -1) {	// and only one "@" symbol
				alert("\nYour email address must contain one, but only one, @ character.")				
				return false
			}
			periodPos = email.indexOf(".",atPos)
			if (periodPos == -1) {					// and at least one "." after the "@"
				alert("\nYour email address must contain at least one . character.")				
				return false
			}
			if (periodPos+3 > email.length)	{		// must be at least 2 characters after the "."
				alert("\nYour email address must contain at least 2 (two) characters after the . (dot).")				
				return false
			}
			return true
		}
}

function MM_popupMsg(msg) { //v1.0
  alert(msg);
}

function MM_openBrWindow(theURL,winName,features) { 
  window.open(theURL,winName,features);
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

// **BEGIN GENERIC VALIDATION FUNCTIONS**
// general purpose function to see if an input value has been entered at all

function isEmpty(inputStr) {
	if (inputStr == "" || inputStr == null) {
		return true
	}
	return false
}

// function to determine if value is in acceptable range for this application
function inRange(inputStr, lo, hi) {
	var num = parseInt(inputStr, 10)
	if (num < lo || num > hi) {
		return false
	}
	return true
}
// **END GENERIC VALIDATION FUNCTIONS**

function validateMonth(field) {
	var input = parseInt(field.value, 10)
	mm = field
	if (isEmpty(input)) {
		alert("Be sure to enter a month value.")
		select(field)
		return false
	} else {
		if (isNaN(input)) {
			alert("Entries must be numbers only.")
			select(field)
			return false
		} else {
			if (!inRange(input,1,12)) {
				alert("Enter a number between 1 (January) and 12 (December).")
				select(field)
				return false
			}
		}
	}
	return true
}

function validateDate(field) {
	var input = parseInt(field.value, 10)
	if (isEmpty(input)) {
		alert("Be sure to enter a date value.")
		select(field)
		return false
	} else {
		if (isNaN(input)) {
			alert("Entries must be numbers only.")
			select(field)
			return false
		} else {
			var monthField = mm
			if (!validateMonth(monthField, true)) return false
			var monthVal = parseInt(monthField.value, 10)
			var monthMax = new Array(31,31,29,31,30,31,30,31,31,30,31,30,31)
			var top = monthMax[monthVal]
			if (!inRange(input,1,top)) {
				alert("Enter a number between 1 and " + top + ".")
				select(field)
				return false
			}
		}
	}
	return true
}

function validateYear(field) {
	var input = parseInt(field.value, 10)
	if (isEmpty(field)) {
		alert("Be sure to enter a year value.")
		select(field)
		return false
	} else {
		if (isNaN(input)) {
			alert("Entries must be numbers only.")
			select(field)
			return false
		} else {
			if (!inRange(input,00,99)) {
				alert("Enter a 2 digit year.")
				select(field)
				return false
			}
		}
	}
	return true
}

function select(field) {
	field.focus()
	field.select()
}

function checkFormDates(form) {
	if (validateMonth(form.month)) {
		if (validateDate(form.date)) {
			if (validateYear(form.year)) {
				return true
			}
		}
	}
	return false
}