//****************** This function checks for an empty field
function DateNow(){
   var d = new Date();  
   var s = new String();
   s= " " + d.getYear();
   var m = d.getMonth()+1;
   var d = d.getDate();
   if (m<10) {
	 m="0"+m;
   }
   if (d<10) {
	 d="0"+d;
   }
	s = s+m+d;   
   return(s);                
}

function isEmpty(frmField,fldName) {
/* checks for empty value of a field.
*/
var fld = frmField.value;
var ctr=0;
var len = fld.length;

for(i=0;i<=len;i++) {
  if (fld.charAt(i)==" ") ctr++;
 }
 if (len==ctr) 
	{
	if (fldName!="") alert(fldName + " is required.");
	frmField.focus();
	return true;
	}
return false;
}

function trim(str)
{ var myValue = new String(str);
var Length_of_value = myValue.length;
var newValue="";
for (i=0;i<Length_of_value;i++)
if(myValue.charAt(i)!=" ")
newValue += myValue.charAt(i);
return newValue;}

function isAlpha(frmField,fldName)
{var AlphaSymbol = new String("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890_");
el = trim(frmField.value);
for(i=0;i<el.length;i++)
	if (AlphaSymbol.indexOf(el.charAt(i))==-1) {
		alert(fldName + " must be alphanumeric only.");
		frmField.focus;
		frmField.select();
		return false;
		}
return true;
}

//****************** This function checks for a valid number
function isNum(frmField,fldName) {
	var NumSymbol = new String("1234567890.");
	el = trim(frmField.value);
	for(i=0;i<el.length;i++)
		if (NumSymbol.indexOf(el.charAt(i))==-1) {
			alert(fldName + " must be numeric.");
			frmField.focus;
			frmField.select();
			return false;
		}
	return true;
}

//****************** This function checks for an empty combo field
function isSelEmpty(frmField,fldName) {
/* checks for empty value of a field.
*/
var fld = frmField[frmField.selectedIndex].value;
var ctr=0;
var len = fld.length;

for(i=0;i<=len;i++) {
  if (fld.charAt(i)==" ") ctr++;
 }
 if (len==ctr) 
	{
	alert(fldName + " is required.");
	frmField.focus();
	return true;
	}
return false;
}

function alltrim(str1)
{ var myValue = new String(str1);
var Length_of_value = myValue.length;
var newValue="";
for (i=0;i<Length_of_value;i++)
if(myValue.charAt(i)!=" ")
newValue += myValue.charAt(i);
return newValue;}


function emailCheck (emailStr) {
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
var matchArray=emailStr.match(emailPat)
if (matchArray==null) {
	alert(" Email Address must be valid!")
	return false
}
var user=matchArray[1]
var domain=matchArray[2]

// See if "user" is valid 
if (user.match(userPat)==null) {
    // user is not valid
	alert(" Email Address must be valid!")
    //alert("The username doesn't seem to be valid.")
    return false
}

var IPArray=domain.match(ipDomainPat)
if (IPArray!=null) {
    // this is an IP address
	  for (var i=1;i<=4;i++) {
	    if (IPArray[i]>255) {
			alert(" Email Address must be valid!")
	      //  alert("Destination IP address is invalid!")
		return false
	    }
    }
    return true
}

// Domain is symbolic name
var domainArray=domain.match(domainPat)
if (domainArray==null) {
	alert(" Email Address must be valid!")
    return false
}

var atomPat=new RegExp(atom,"g")
var domArr=domain.match(atomPat)
var len=domArr.length
if (domArr[domArr.length-1].length<2 || 
    domArr[domArr.length-1].length>3) {
   alert("The address must end in a three-letter domain, or two letter country.")
   return false
}

if (len<2) {
	alert(" Email Address is invalid.")
   return false
}

return true;
}

function isValidDate(dateMM, dateDD, dateYYYY)
{	var ar = new Array(12);
	var now = new Date();
	var theDate = new Date(dateYYYY, dateMM-1, dateDD);

	if (dateYYYY < 1900)
	{	
		alert("Invalid date.")
		return false;
	}	
			
	ar[1] = 31; // January
	ar[2] = (dateYYYY % 4 == 0) ? 29 : 28; // February
	ar[3] = 31; // March
	ar[4] = 30; // April
	ar[5] = 31; // May
	ar[6] = 30; // June
	ar[7] = 31; // July
	ar[8] = 31; // August
	ar[9] = 30; // September
	ar[10] = 31; // October
	ar[11] = 30; // November
	ar[12] = 31; // December
		
	if (dateDD > ar[parseInt(dateMM,10)])
	{	
		alert("Invalid date.")
		return false;
	}
	
	//if (theDate < now)
	//{
	//	alert("Date should not be earlier than today.")
	//	return false;
	//}
		
	return true;
}
//  End
