// JavaScript Document  written by smitha on 31/3/2004
function chkmoney(obj)
{
obj=Trim(obj);
if(isNaN(obj.value))
{
alert("Invalid Amount,don\'t use ($) dollar signs or (,) commas etc. ")
obj.value="";
obj.focus();
return false;
}
else
 { if(parseFloat(obj.value)<0)
  {
   alert("Amount must be greater than 0")
   obj.value="";
   obj.focus();
   return false;
  }
}
}
function num_chk(obj)
{    
    if (isNaN(obj.value) && (obj.value!="") )
	{ 
		alert("Field cannot be Character Value");
		obj.focus();
		return false;
	}
}
function field_length(obj)
{

	if(obj.value.length>=50)
	{
		alert("Te length of the feild cannot be more than 50");
		obj.value="";
		obj.focus()
		return false;
	}
	else if (!isNaN(obj.value) && (obj.value != ""))
	{ 
		alert("Field cannot be Numeric Value");
		obj.value="";
		obj.focus();
		return false;
	}
	else
	{
		return true;
	}
}

function desc_length(obj)
{
	if(obj.value.length >= 150)
	{
		alert("The length of the Field should be less than 150 Characters");
		obj.value="";
		obj.focus();
		return false;
	}
	else
	{
		return true;
	}
}


function zip_code(obj)
{
	if(obj.value.length >=7)
	{
		alert("The length of the Field should be less than  or equal to 6 Characters");
		obj.value="";
		obj.focus();
		return false;
	}
	else if (isNaN(obj.value) && (obj.value!="") )
	{ 
		alert("Field cannot be Character Value");
		obj.value="";
		obj.focus();
		return false;
	}
	else
	{
		return true;
	}
}

function num_code(obj)
{
	if(obj.value.length >= 11)
	{
		alert("The length of the Field should be less than or equal to  10 Characters");
		obj.value="";
		obj.focus();
		return false;
	}
	else if (isNaN(obj.value))
	{ 
		alert("Field cannot be Character Value");
		obj.value="";
		obj.focus();
		return false;
	}
	else
	{
		return true;
	}
}

function user_code(obj)
{
	if(obj.value.length >= 10)
	{
		alert("The length of the Field should be less than 10 Characters");
		obj.value="";
		obj.focus();
		return false;
	}
	else if (!isNaN(obj.value))
	{ 
		alert("Field cannot be Numeric Value");
		obj.value="";
		obj.focus();
		return false;
	}
	else
	{
		return true;
	}
}
function test_code(obj)
{
	if(obj.value.length >= 10)
	{
		alert("The length of the Field should be less than 10 Characters");
		obj.value="";
		obj.focus();
		return false;
	}
	else
	{
		return true;
	}
}
function Email(obj)
{
	var str=obj.value;
	var a;
	var len=str.length;
	var reg=new RegExp("@");
	var ind=str.search(reg);
	var c,d=0;
	var b=0;
	for(a=0;a<=str.length;a++)
	{

		if(str.charAt(a)=="@")
		{
			b++;
		}
		
	}

	if(b>1)
		{
			alert(" Its an Invalid E-Mail Id");
			obj.value="";
			obj.focus();
			return false;
		}
	else
		{
			for(a=0;a<=str.length;a++)
			{
				if(str.charAt(a)==".")
				{
					d=a;
				}
			
			}
			if((ind>d)||(ind==-1)||(d==0)||(ind+1==d)||(d+1==len))
			{
				alert ("Please enter a Valid E-Mail Id");
				obj.value="";
				obj.focus();
				return false;
			}
		}
	if(str.length>50)
	{
		alert("The Length of the E-Mail Id should be less than or equal to 50"); 
		obj.value="";
		obj.focus();
		return false;
	}
	else
	{
		return true;
	}
					
}

/*    Date Validation    */


function checkdates(objName) {
var datefield = objName;
if (chkdate(objName) == false) {
datefield.select();
alert("That date is invalid.  Please try again.");
datefield.focus();
return false;
}
else {
return true;
   }
}
function chkdate(objName) {
var strDatestyle = "US"; //United States date style
//var strDatestyle = "EU";  //European date style
var strDate;
var strDateArray;
var strDay;
var strMonth;
var strYear;
var intday;
var intMonth;
var intYear;
var booFound = false;
var datefield = objName;
var strSeparatorArray = new Array("-"," ","/",".");
var intElementNr;
var err = 0;
var strMonthArray = new Array(12);
strMonthArray[0] = "01";
strMonthArray[1] = "02";
strMonthArray[2] = "03";
strMonthArray[3] = "04";
strMonthArray[4] = "05";
strMonthArray[5] = "06";
strMonthArray[6] = "07";
strMonthArray[7] = "08";
strMonthArray[8] = "09";
strMonthArray[9] = "10";
strMonthArray[10] = "11";
strMonthArray[11] = "12";
strDate = datefield.value;
if (strDate.length < 1) {
return true;
}
for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
strDateArray = strDate.split(strSeparatorArray[intElementNr]);
if (strDateArray.length != 3) {
err = 1;
return false;
}
else {
strDay = strDateArray[0];
strMonth = strDateArray[1];
strYear = strDateArray[2];
}
booFound = true;
   }
}
if (booFound == false) {
if (strDate.length>5) {
strDay = strDate.substr(0, 2);
strMonth = strDate.substr(2, 2);
strYear = strDate.substr(4);
   }
}
if (strYear.length == 2) {
strYear = '20' + strYear;
}
// US style
if (strDatestyle == "US") {
strTemp = strDay;
strDay = strMonth;
strMonth = strTemp;
}
intday = parseInt(strDay, 10);
if (isNaN(intday)) {
err = 2;
return false;
}
intMonth = parseInt(strMonth, 10);
if (isNaN(intMonth)) {
for (i = 0;i<12;i++) {
if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) {
intMonth = i+1;
strMonth = strMonthArray[i];
i = 12;
   }
}
if (isNaN(intMonth)) {
err = 3;
return false;
   }
}
intYear = parseInt(strYear, 10);
if (isNaN(intYear)) {
err = 4;
return false;
}
if (intMonth>12 || intMonth<1) {
err = 5;
return false;
}
if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) {
err = 6;
return false;
}
if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) {
err = 7;
return false;
}
if (intMonth == 2) {
if (intday < 1) {
err = 8;
return false;
}
if (LeapYear(intYear) == true) {
if (intday > 29) {
err = 9;
return false;
}
}
else {
if (intday > 28) {
err = 10;
return false;
}
}
}
if (strDatestyle == "US") {
	if (intday < 10){ 
		datefield.value = strMonthArray[intMonth-1] + "-0" + intday+"-" + strYear;
	}else{
		datefield.value = strMonthArray[intMonth-1] + "-" + intday+"-" + strYear;
	}	
	
}
else {
datefield.value = intday + "-" + strMonthArray[intMonth-1] + "-" + strYear;
}
return true;
}
function LeapYear(intYear) {
if (intYear % 100 == 0) {
if (intYear % 400 == 0) { return true; }
}
else {
if ((intYear % 4) == 0) { return true; }
}
return false;
}
function doDateCheck(from, to) {
if (Date.parse(from.value) <= Date.parse(to.value)) {
alert("The dates are valid.");
}
else {
if (from.value == "" || to.value == "") 
alert("Both dates must be entered.");
else 
alert("To date must occur after the from date.");
   }
}
//  End -->


/*           validation for Fax number           */

function faxCheck(obj){
var str = (obj.value) ;
	var frstThree = str.substr(0,3);
	var mdl = str.substr(4,3);
	var lst = str.substr(8,4);
	var sls1 = str.substr(3,1);
	var sls2 = str.substr(7,1);
	
	if ((sls1=="-") || (sls2=="-")){
		if ((obj.value.length<=11) && (obj.value!="")){
			alert ('Please Enter Fax number like "123-456-7890"');
			obj.focus();
			return false ;
		}
		else if ((obj.value.length>=21) && (obj.value!="")){
			alert ('Please enter valid fax number');
			obj.focus();
			return false ;
		}
		else if (isNaN(frstThree)){
			alert ('Please Enter correct Format of Fax No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
		else if (isNaN(mdl)){
			alert ('Please Enter correct Format of Fax No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
		else if (isNaN(lst)){
			alert ('Please Enter correct Format of Fax No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
		else if (sls1!="-"){
			alert ('Please Enter correct Format of Fax No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
		else if (sls2!="-"){
			alert ('Please Enter correct Format of Fax No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
	}else{
		if ((obj.value!="") && (obj.value.length<=9)){
				alert ('Not Valid Fax number');
				obj.focus();
				return false ;
		}
		else if ((obj.value!="") && (obj.value.length>=21)){
				alert ('Not Valid Fax number');
				obj.focus();
				return false ;
		}
			else if (isNaN(obj.value)){
				alert ('Please Enter correct Format of Fax No. like "xxx-xxx-xxxx" and "x" should be numeric');
				obj.focus();
				return false ;
			}
		}

}

/*           validation for Phone number           */


function phoneCheck(obj){
	var str = (obj.value) ;
	var frstThree = str.substr(0,3);
	var mdl = str.substr(4,3);
	var lst = str.substr(8,4);
	var sls1 = str.substr(3,1);
	var sls2 = str.substr(7,1);
	
	if ((sls1=="-") || (sls2=="-")){
		if ((obj.value.length<=11) && (obj.value!="")){
			alert (' Please Enter valid Phone number ');
			obj.focus();
			return false ;
		}
		else if ((obj.value.length>=21) && (obj.value!="")){
			alert ('Please Enter Phone number like "123-456-7890"');
			obj.focus();
			return false ;
		}
		else if (isNaN(frstThree)){
			alert ('Please Enter correct Format of Phone No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
		else if (isNaN(mdl)){
			alert ('Please Enter correct Format of Phone No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
		else if (isNaN(lst)){
			alert ('Please Enter correct Format of Phone No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
		else if (sls1!="-"){
			alert ('Please Enter correct Format of Phone No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
		else if (sls2!="-"){
			alert ('Please Enter correct Format of Phone No. like "xxx-xxx-xxxx" and "x" should be numeric');
			obj.focus();
			return false ;
		}
	}else{
		if ((obj.value!="") && (obj.value.length<=9)){
				alert ('Not Valid Phone number');
				obj.focus();
				return false ;
		}
		else if ((obj.value!="") && (obj.value.length>=21)){
				alert ('Not Valid Phone number');
				obj.focus();
				return false ;
		}
			else if (isNaN(obj.value)){
				alert ('Please Enter correct Format of Phone No. like "xxx-xxx-xxxx" and "x" should be numeric');
				obj.focus();
				return false ;
			}
		}
		
}


function checkdates(objName)
{
	var datefield = objName;
	var str=objName.value;
	var str1=new Date();
	dd=str1.getDate();
	str=str.substring(6);
	mm=str1.getMonth()+1;
	yy=str1.getYear();
	dob=mm+'/'+dd+'/'+yy;

	if (str.length < 4)
	{
		alert("Enter the correct format of Date (mm/dd/yyyy)");
		objName.value="";
		objName.focus();
		return false;
	}
	diff=yy-str;
/*	if(str.length<=2)
	{
	ss=yy.toString().valueOf();
	ss=ss.substring(2);
	diff=ss-str;
	}
	else
	{
	diff=yy-str;
	}*/
	if(objName.value==" ")
	{
		alert("Please enter the date.");
		objName.focus();
		return false;
	}
	
	else if (chkdate(objName) == false) 
	{
		datefield.select();
		alert("That date is invalid.  Please try again.");
		datefield.value="";	
		datefield.focus();
		return false;
	}
	
	else 
	{
		return true;
   	}
}


function chkdates(objName) 
{
	var strDatestyle = "US"; //United States date style
	//var strDatestyle = "EU";  //European date style
	var strDate;
	var strDateArray;
	var strDay;
	var strMonth;
	var strYear;
	var intday;
	var intMonth;
	var intYear;
	var booFound = false;
	var datefield = objName;
	var strSeparatorArray = new Array("/"," ","-",".");
	var intElementNr;
	var err = 0;
	var strMonthArray = new Array(12);
	strMonthArray[0] = "01";
	strMonthArray[1] = "02";
	strMonthArray[2] = "03";
	strMonthArray[3] = "04";
	strMonthArray[4] = "05";
	strMonthArray[5] = "06";
	strMonthArray[6] = "07";
	strMonthArray[7] = "08";
	strMonthArray[8] = "09";
	strMonthArray[9] = "10";
	strMonthArray[10] = "11";
	strMonthArray[11] = "12";
	strDate = datefield.value;
	if (strDate.length < 1) 
	{
		return true;
	}

	for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) 
	{
		if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) 
		{
			strDateArray = strDate.split(strSeparatorArray[intElementNr]);
			if (strDateArray.length != 3) 
			{
				err = 1;
				return false;
			}
			else 
			{
				strDay = strDateArray[0];
				strMonth = strDateArray[1];
				strYear = strDateArray[2];
			}
			booFound = true;
  		 }
	}
	if (booFound == false)
	 {
		if (strDate.length>5) 
		{
			strMonth = strDate.substr(0, 2);
			strDay  = strDate.substr(2, 2);
			strYear = strDate.substr(4);
   		}
	}
	if(strDate.length == 8) 
	{
		if (strYear.length==2)
		 {
			strYear = '20' + strYear;
		}
	}
// US style
/*if (strDatestyle == "US") {
strTemp = strDay;
strDay = strMonth;
strMonth = strTemp;
}*/
	intday = parseInt(strDay, 10);
	if (isNaN(intday)) 
	{
		err = 2;
		return false;
	}
	intMonth = parseInt(strMonth, 10);
	if (isNaN(intMonth)) 
	{
		for (i = 0;i<12;i++) 
		{
			if (strMonth.toUpperCase() == strMonthArray[i].toUpperCase()) 
			{
					intMonth = i+1;
					strMonth = strMonthArray[i];
					i = 12;
  			 }
		}
		if (isNaN(intMonth)) 
		{
			err = 3;
			return false;
  		 }
	}
	intYear = parseInt(strYear, 10);
	if (isNaN(intYear))
	 {
		err = 4;
		return false;
	}
	if (intMonth>12 || intMonth<1) 
	{
		err = 5;
		return false;
	}
	if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) 
	{
		err = 6;
		return false;
	}
	if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) 
	{
		err = 7;
		return false;
	}
	if (intMonth == 2) 
	{
		if (intday < 1) 
		{
			err = 8;
			return false;
		}
		if (LeapYear(intYear) == true) 
		{
			if (intday > 29) 
			{
			err = 9;
			return false;
			}
		}
		else
		{
			if (intday > 28) 
			{
				err = 10;
				return false;
			}
		}
	
	}
//if (strDatestyle == "US") {
//datefield.value = strMonthArray[intMonth-1] + " " + intday+" " + strYear;
//}MonthArray[intMonth-1]
//else {


	if(intday < 10)
	{
		datefield.value = intday + "/" +strMonthArray[intMonth-1] + "/" + strYear;
	}
	else
	{
	
		datefield.value ="0"+intday + "/" +strMonthArray[intMonth-1] + "/" + strYear;
	}
	
	
//}
	return true;
}
function LeapYear(intYear) {
if (intYear % 100 == 0) {
if (intYear % 400 == 0) { return true; }
}
else {
if ((intYear % 4) == 0) { return true; }
}
return false;
}

function Trim (ns)
	{
		s=ns.value;
		//trim lefthand spaces
		var i=0;
		while(s.charAt(i)==' ')
		i++;
		s=s.substring(i,s.length);
		//trim righthand spaces
		if (s.length > 0) 
		{
			while(''+s.charAt(s.length-1)==' ') 
			s = s.substring(0,s.length-1);
			ns.value=s;
		}
		else
		{	ns.value=s; }
	return ns;	
	
	}
