
function IsDate(str)
     {
      var VEK="20"
      var slen=str.length;
      var begpos=0;
      var yy="", mm="", dd="";
      var year=0, mon=0, day=0, maxday;
       
      if (slen == 0) return true;
    
      for(var i=0; i < slen; i++)
       if ((str.charAt(i)<'0' || str.charAt(i)>'9') && (str.charAt(i)!='-' && str.charAt(i)!='.' && str.charAt(i)!='/'))  return false
       else
       if ((str.charAt(i)=='.') || (str.charAt(i)=='/') || (str.charAt(i)=='-'))
        {
         if (begpos==i)return false;
         if (mm.length==0) { mm=str.substring(begpos,i); begpos=i+1; }
         else
         if (dd.length==0) { dd=str.substring(begpos,i); begpos=i+1; }
         else
         return false;
        }
		
      if (begpos>=slen) return false;
      yy=str.substring(begpos,slen);
      if (dd.length>2 || dd.length<1) return false;
      if (mm.length>2 || mm.length<1) return false;
      if (yy.length!=4 && yy.length!=2) return false;
    
      day=dd; mon=mm; year=yy; 
    
      if (mon<1 || mon>12) return false;
      if (day<1 || day>31) return false;
      if (year<1 || year>9999) return false;
      if (yy.length==2) year=VEK+yy;
      if (mon==2)
       { 
        maxday=28;
        if (year%400==0 || (year%4==0 && year%100>0)) maxday=29;
       }
      else
       {
        maxday=31;
        if (mon==2) maxday=28; 
        if (mon==4 || mon==6 || mon==9 || mon==11) maxday=30; 
       }
       if (day>maxday) return false;
       return true;
} 

function IsNumeric(sValue){
	if (isNaN(sValue)) {
		return false;
	}else{
		return true;
	}
}

function IsEmail(sValue) 
{ 
txt=sValue

if (txt == "") { 
return(false) 
} 

if (txt.indexOf(".") == -1) { 
return(false) 
} 

dog = txt.indexOf("@"); 
if (dog == -1) { 
return(false) 
} 

if ((dog < 1) || (dog > txt.length - 5)) { 
return(false) 
} 

if ((txt.charAt(dog - 1) == '.') || (txt.charAt(dog + 1) == '.')) { 
return(false) 
} 

return true;
} 

function LowValidator(sType, sValue, bBlank) {
	if (bBlank==true) {
		if (sValue=="") {
			return true;
		}
	} else {
		if (sValue=="") {
			return false;
		}
	}
	
	if ((sType=="date")) {
		return IsDate(sValue);
	} else {
	if ((sType=="num")) {
		if (IsNumeric(sValue)) {
			return true;
		}else{
			return false;
		}
	}else{
	if ((sType=="email")) { // (sType=="e")) {
		return IsEmail(sValue);
	}else{
		return true;
	}
	}
	}
	return true;
}

	function loadUp() {
		var frm=document.forms(0);
		var value;
		for (var i=0; i < frm.length; i++) {
			//fill empty form fields with value
		    if (frm.elements[i].value=="") {
				value = frm.elements[i].name;
				frm.elements[i].value = value;
			}
		}
	}
	
	function FieldsValidator() {
		var frm=document.forms(0);

			if (!(LowValidator("text",frm.FirstName.value,false))) {
				alert("Please enter your First Name! ");
				frm.FirstName.select();
				return false;
			}

			if (!(LowValidator("text",frm.LastName.value,false))) {
				alert("Please enter your Last Name!");
				frm.LastName.focus();
				return false;
			}

			if (!(LowValidator("text",frm.SSN.value,false))) {
				alert("Please enter your Social Security Number!");
				frm.SSN.focus();
				return false;
			}

			if (!(LowValidator("email",frm.EMAIL.value,false))) {
				alert("Please enter a valid Email Address!");
				frm.EMAIL.focus();
				return false;
			}
			
			if (!(LowValidator("date",frm.SigDate.value,false))) {
				alert("Please enter a valid date!");
				frm.Sig_Date.focus();
				return false;
			}
			
			if (!(LowValidator("text",frm.DISCIPLINE.value,false))) {
				alert("Please enter Professional discipline!");
				frm.DISCIPLINE.focus();
				return false;
			}

			if (!(LowValidator("text",frm.PERMSTREET.value,false))) {
				alert("Please enter a value!");
				frm.PERMSTREET.focus();
				return false;
			}
			
			if (!(LowValidator("text",frm.PERMCITY.value,false))) {
				alert("Please enter a value!");
				frm.PERMCITY.focus();
				return false;
			}
			
			if (!(LowValidator("text",frm.PERMSTATE.value,false))) {
				alert("Please enter a value!");
				frm.PERMSTATE.focus();
				return false;
			}

			if (!(LowValidator("text",frm.PERMZIP.value,false))) {
				alert("Please enter a value!");
				frm.PERMZIP.focus();
				return false;
			}
			
			if (!(LowValidator("text",frm.PERMPHONE.value,false))) {
				alert("Please enter a value!");
				frm.PERMPHONE.focus();
				return false;
			}

			return true;
    }
