function doAction(frm,str){
	frm.action = str;
	frm.submit();
}

function FormatDate(i, delKey,direction) {
  if (i.value.length < 10) {
  	if (delKey!=9) { 
  		//alert ("inside");
	  	if(delKey!=8 && delKey!=46 && delKey!=16 &&  !(delKey>36 && delKey<41)){ //if the delete, backspace, shift, are not the keys that caused the keyup event.
  			var fieldLen = i.value.length
   			if ((delKey >= 48 && delKey <= 57) || (delKey >= 96 && delKey <=105)) {
   				
				if (fieldLen == 2 || fieldLen == 5) {
      				i.value = i.value + "/";
		     	}
   			} else {
   				if (direction == "up") {
     				if (i.value.length == 0) {
      					i.value = "";
	     			} else {
		      			i.value = i.value.substring(0,i.value.length-1);
	   				}
    			}
	 		}
  			i.focus()
	  	}
 	} else {
 		if (direction == "down") {
	 		CheckDate(i);
  		}
  	}
 }
}

function CheckDate(THISDATE) {
	var err=0;
	a=THISDATE.value;
	if(a.length==0)
		return;
	if(a.length==10){
		b = a.substring(0, 2);// month
		c = a.substring(2, 3);// '/'
		d = a.substring(3, 5);// day
		e = a.substring(5, 6);// '/'
		f = a.substring(6, 10);// year
		if (b<1 || b>12) err = 1;
		if (d<1 || d>31) err = 1;
		if (f<1900) err = 1;
		if (b==4 || b==6 || b==9 || b==11){
			if (d==31) err=1;
		}
		if (b==2){
			var g=parseInt(f/4);
			if (isNaN(g)) {
				err=1;
			}
			if (d>29) err=1;
			if (d==29 && ((f/4)!=parseInt(f/4))) err=1;
		}
	}else
		err=1;
	if (err==1) {
		alert(THISDATE.value + ' is not a valid date or not a right format. Please re-enter as mm/dd/yyyy.');
		THISDATE.value = "";
	}
}

function validateEmail(email){
  var result = false;
  var theStr = new String(email);
  var index = theStr.indexOf("@");
  if (index > 0)
  {
    var pindex = theStr.indexOf(".",index);
    if ((pindex > index+1) && (theStr.length > pindex+1))
	result = true;
  }
  return result;
}

function validateAlphaNumeric(field)
{
	var text = trim (field.value);
	var valid = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
	var ok = "yes";
	var temp;
	for (var i=0; i<text.length; i++) {
		temp = "" + text.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") 
			ok = "no";
	}
	if(ok == "no"){
		field.focus();
		field.select();
		return ("Invalid Value :" + field.value +" \n");
   } else
   		return "";
}

function validatephone(field1,field2,field3,str){ 
	var ph1 = trim(field1.value);
	var ph2 = trim(field2.value);
	var ph3 = trim(field3.value);
	var msg ="";


	if(isEmpty(ph1) && isEmpty(ph2) && isEmpty(ph3)){
		return msg;
	}
	if((!isNumericField(field1))||(!isNumericField(field2))||(!isNumericField(field3)))
		msg += "Invalid "+str+" .Please Enter a Number  \n";
		//return "Invalid "+str+" .Please Enter a Number\n";
	if(ph1.length != 3)
		msg += "Please Enter 3 digits in Area Code of "+str+".  \n";
		//return "Please Enter 3 digits in Area Code of "+str+".\n";
	if(ph2.length != 3)
		msg += "Please Enter 3 digits in Second Part of "+str+".  \n";
		//return "Please Enter 3 digits in Second Part of "+str+".\n";
	if(ph3.length != 4)
		msg += "Please Enter 4 digits in Third Part of "+str+".  \n";
		//return "Please Enter 4 digits in Third Part of "+str+".\n";
	if((isAllZeros(field1))&&(isAllZeros(field2))&&(isAllZeros(field3)))
		msg += "All Zeros Not Allowed in "+str+".  \n";
		//return "All Zeros Not Allowed in "+str+".\n";
	if(isAllZeros(field1))
		msg += "Area Code cannot be 000 for "+str+".  \n";
		//return "Area Code cannot be 000 for "+str+".\n";
		
	return msg;
}// end function validatephone

function isValidZip(field){ 
	var msg = "";
	if(field.value.length != 5)
		msg += "Zip Code Must be 5 digits.  \n";
		//return "Zip Code Must be 5 digits.\n";	
	if(!isNumericField(field))
		msg += "Zip Code Must be in Numeric.  \n";
		//return "Zip Code in Non Numeric.\n";
	if(isAllZeros(field))
		msg += "Zip Code Cannot be all Zeros.  \n";
		//return "Zip Code Cannot be all Zeros.\n";
	 return msg;

}// end function isValidZip

function trim ( s ){
	return rtrim(ltrim(s));
}

function isEmpty(str){
	if ( ( trim(str) == null) || (trim(str) == "") ) {
		return true;
	}
	return false;
}
function ltrim ( s ){
	return s.replace( /^\s*/, "" );
}

function rtrim ( s ){
	return s.replace( /\s*$/, "" );
}

function validateName(frm,field) 
{
	var text = trim (field.value);
	alert("text="+text);
	var valid = " abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'-."
	var ok = "yes";
	var temp;
	for (var i=0; i<text.length; i++) {
		temp = "" + text.substring(i, i+1);
		alert("temp="+temp);
		if (valid.indexOf(temp) == "-1"){ 
			ok = "no";
			alert("ok="+ok);
		}
	}
	if (ok == "no"){
		field.focus();
		field.select();
		alert ("Invalid Name : " + field.value +"\n");
		alert("insite");
   } else{
		frm.field.value = text;
		alert("frm.field.value="+frm.field.value);
   		return "";
   }
}

function isNumeric(field) 
{
	var text = trim (field.value);
	var valid = "1234567890"
	var ok = "yes";
	var temp;
	for (var i=0; i<text.length; i++) {
		temp = "" + text.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") 
			ok = "no";
	}
	if (ok == "no") 
	{
		field.focus();
		field.select();
		alert ("Please Enter Numbers Only instead of " +text +"\n");
   }
   /*else
   		return "";*/
}
function isNumericField(field){
	var text = trim (field.value);
	var valid = "1234567890.,"
	var ok = "yes";
	var temp;
	for (var i=0; i<text.length; i++) {
		temp = "" + text.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") 
			ok = "no";
	}
	if (ok == "no"){
		return false;
    } else{
   		return true;
	}
}

function isAllZeros(field){ 
	var text = trim (field.value);
	var zeroCtr=0;
	
 	for (var i=0; i < text.length; i++) {
		var oneChar = text.charAt(i);
		if(oneChar=="0"){
			zeroCtr= zeroCtr+1;
		}
	}
	if(zeroCtr==text.length){
		return true;
	}else{
	    return false;
	}
	
}// end function isAllZeros

function moveFocus(i,delKey,fld) {
	//alert("in");
    if (i.value.length == i.maxLength) {
  		if (delKey!=9) { 
			if(delKey!=8 && delKey!=46 && delKey!=16 &&  !(delKey>36 && delKey<41)){ //if the delete, backspace, shift, are not the keys that caused the keyup event.
  				fld.focus();
			}
 		} 
  	}
}// end of function
