//************************* Check Browser Version ******************************

var isNav4 = false, isNav5 = false, isIE4 = false
var strSeperator = "/"; 
var vDateType = 3; // Global value for type of date format
//                1 = mm/dd/yyyy
//                2 = yyyy/dd/mm 
//                3 = dd/mm/yyyy
var vYearType = 4; //Set to 2 or 4 for number of digits in the year for Netscape
var vYearLength = 2; // Set to 4 if you want to force the user to enter 4 digits for the year before validating.
var err = 0; // Set the error code to a default of zero
if (navigator.appName == "Netscape") 
{
  if (navigator.appVersion < "5") 
  {
    isNav4 = true;
    isNav5 = false;
  }
  else
  {
    if (navigator.appVersion > "4") 
    {
      isNav4 = false;
      isNav5 = true;
    }
  }
}
else 
{
isIE4 = true;
}

//********************* Authenticate string with Numerics **********

function chkisnumeric(txtbox, txtlen, txtname)
{
  if (!chknull(txtbox, txtname)) return false;
  if (!chkmax(txtbox, txtlen, txtname)) return false;
  //if (!chkdgt(txtbox, txtname)) return false;

  if (txtbox.value.length > 0)
  {
    for (i=0;i<txtbox.value.length;i++)
    {
      cca = txtbox.value.charCodeAt(i);
      ccb = txtbox.value.charCodeAt(txtbox.value.length-1);

      if (cca>=48 && cca<=57)
      {
	//
      }	
      else
      {
        alert("Invalid Characters are not allowed in " + txtname + ".");
	txtbox.focus();
	return false;	
      }
    }	
  }         
  return true;
}
//************************* Check Numeric Values ******************************

function chknum(strNumber)
{
	if(isNaN(strNumber)) return true;
	if(strNumber.indexOf('e') != -1) return true;
	if(strNumber.indexOf('-') != -1) return true;
	if(strNumber.indexOf('+') != -1) return true;
	if(strNumber.indexOf(' ') != -1) return true;
	return false;
}

//*********************************** Check Null ******************************

function chknull(txtbox, txtname)
{
  if (txtbox.value == '')
  {
    alert('Please enter ' + txtname + '.');
    txtbox.focus();
    return false;	
  }
  return true;
}

//********************* Check for Max length reached **************************

function chkmax(txtbox, txtlen, txtname)
{
  if (txtbox.value.length > txtlen)
  {
    alert('Please limit ' + txtname + ' to only ' + txtlen + ' characters.')
    txtbox.focus();
    return false;
  }
  return true;
}

//********************* Check for less than length not allowed ****************

function chklen(txtbox, txtlen, txtname)
{
    if (txtbox.value.length < txtlen)
    {
      alert("Less than " + txtlen + " Characters are not allowed in " + txtname + ".");
      txtbox.focus();
      return false;	
    }
  return true;
}

//********************* Check for character not allowed ***********************

function chkchr(txtbox, txtname)
{
    if (chknum(txtbox.value)!=false)
    {
      alert("Character not allowed in " + txtname + ".");
      txtbox.focus();
      return false;	
    }	
  return true;
}

//********************* Check for only Digits not allowed ***********************

function chkdgt(txtbox, txtname)
{
  if (!chknum(txtbox.value))
  {
    alert ("Only digits are not allowed in " + txtname + ".");
    txtbox.focus();
    return false;
  }
  return true;
}

//********************* Authenticate string with space and Numerics **********

function chktxtnum(txtbox, txtlen, txtname)
{
  if (!chknull(txtbox, txtname)) return false;
  if (!chkmax(txtbox, txtlen, txtname)) return false;
  if (!chkdgt(txtbox, txtname)) return false;

  if (txtbox.value.length > 0)
  {
    for (i=0;i<txtbox.value.length;i++)
    {
      cca = txtbox.value.charCodeAt(i);
      ccb = txtbox.value.charCodeAt(txtbox.value.length-1);

      if ((cca>=65 && cca<=90) || (cca>=97 && cca<=122) || (cca>=48 && cca<=57) || (txtbox.value.charCodeAt(0) != 32 &&       cca==32 && ccb != 32) || (cca==45))
      {
	//
      }	
      else
      {
        alert("Invalid Characters are not allowed in " + txtname + ".");
	txtbox.focus();
	return false;	
      }
    }	
  }         
  return true;
}

//********************* Authenticate string without space and Numerics **********

function chktxt(txtbox, txtlen, txtname)
{
  if (!chknull(txtbox, txtname)) return false;
  if (!chkmax(txtbox, txtlen, txtname)) return false;
  if (!chkdgt(txtbox, txtname)) return false;

  if (txtbox.value.length > 0)
  {
    for (i=0;i<txtbox.value.length;i++)
    {
      cca = txtbox.value.charCodeAt(i);
      ccb = txtbox.value.charCodeAt(txtbox.value.length-1);

      if ((cca>=65 && cca<=90) || (cca>=97 && cca<=122) || (txtbox.value.charCodeAt(0) != 32 && cca==32 && ccb != 32) || (cca==45))
      {
	//
      }	
      else
      {
        alert("Invalid Characters are not allowed in " + txtname + ".");
	txtbox.focus();
	return false;	
      }
    }	
  }         
  return true;
}

//**** Authenticate string with Numerics less than given length not allowed ********
function chktnmax(txtbox, txtlen, txtname)
{
  if (!chknull(txtbox, txtname)) return false;
  if (!chkmax(txtbox, txtlen, txtname)) return false;
  if (!chkdgt(txtbox, txtname)) return false;
  if (!chklen(txtbox,txtlen,txtname)) return false;

  if (txtbox.value.length > 0)
  {
    for (i=0;i<txtbox.value.length;i++)
    {
      cca = txtbox.value.charCodeAt(i);

      if ((cca>=65 && cca<=90) || (cca>=97 && cca<=122) || (cca>=48 && cca<=57))
      {
	//
      }	
      else
      {
        alert("Invalid Characters are not allowed in " + txtname + ".");
	txtbox.focus();
	return false;	
      }
    }	
  }         


  return true;
}

//********************* Authenticate Phone Number ******************************

function chkphone(txtarea,txtco,txtph,txtname)
{
  var txtbox = new Array()
  txtbox[0]=txtarea;
  txtbox[1]=txtco;
  txtbox[2]=txtph; 	
  var txtlen = new Array()	
  txtlen[0]=3;
  txtlen[1]=3;
  txtlen[2]=4; 	

  for (i=0;i<3;i++)
  {
    if (!chklen(txtbox[i],txtlen[i],txtname)) return false;
    if (!chkchr(txtbox[i],txtname)) return false;
  }
  return true;
}


//********************* Authenticate Email Address ******************************

function chkemail(txtbox, txtlen, txtname)
{

  if (!chknull(txtbox, txtname)) return false;
  if (!chkmax(txtbox, txtlen, txtname)) return false;

  if (txtbox.value.length > 0)
  {
    for (i=0;i<txtbox.value.length;i++)
    {
      cca = txtbox.value.charCodeAt(i);

      if ((cca>=65 && cca<=90) || (cca>=97 && cca<=122) || (cca>=48 && cca<=57) || cca==95 || cca==46 || cca==45 || cca==64)
      {
	//
      }	
      else
      {
        alert("Invalid Characters are not allowed in " + txtname + ".");
	txtbox.focus();
	return false;	
      }
    }	
  }         
  if(txtbox.value.indexOf('@') == -1 || txtbox.value.indexOf('.') == -1 || txtbox.value.charCodeAt(0) == 64 ||                txtbox.value.charCodeAt(0) == 95 || txtbox.value.charCodeAt(0) == 46 ||           txtbox.value.indexOf("@",txtbox.value.indexOf("@")+1) > 0 || txtbox.value.indexOf("@@") != -1  ||           txtbox.value.indexOf(".@") != -1 || txtbox.value.indexOf("@.") != -1 || txtbox.value.indexOf("@_") != -1 ||           txtbox.value.indexOf("..") != -1 || txtbox.value.indexOf("._") != -1 || txtbox.value.indexOf("_.") != -1 || 
     txtbox.value.indexOf(".",txtbox.value.indexOf("@")-1) == -1 || txtbox.value.indexOf("__") != -1) 

  {
    alert("Invalid " + txtname + " Address. \n e.g. test@domain.com");
    txtbox.focus();
    return false;	
  }	
  cca = txtbox.value.charCodeAt(txtbox.value.length-1);
  if ((cca>=65 && cca<=90) || (cca>=97 && cca<=122) || (cca>=48 && cca<=57))
  {
    //
  }	
  else
  {
    alert("Invalid " + txtname + " Address. \n e.g. test@domain.com");
    txtbox.focus();
    return false;	
  }

  return true;
}

//********************* Authenticate Zip Code ******************************

function chkzip(txtbox, txtlen, txtname)
{
  if (!chknull(txtbox, txtname)) return false;
  if (!chkmax(txtbox, txtlen, txtname)) return false;
  if (!chklen(txtbox,txtlen ,txtname)) return false;
  if (!chkchr(txtbox,txtname)) return false;
  return true; 
}

//********************* Authenticate Combo Selection ******************************

function chkcombo(cmbbox,cmbname)
{
  cmbValue = cmbbox.options[cmbbox.selectedIndex].value;	
  if (cmbValue == "-1")
  {
    alert('Please select a ' + cmbname + '.');
    cmbbox.focus();
    return false;	
  }
  return true; 
}

//******************************** Format Number **********************************

function chkfloat(txtbox,txtlen)
{
  return(formatnum(txtbox.value,txtlen));
}

function formatnum(num,dec) 
{
  num = num.toString().replace(/\$|\,/g,'');
  if(isNaN(num)) num = "0";
  sign = (num == (num = Math.abs(num)));
  num  = Math.floor(num*Math.pow(10,dec)+0.50000000001);
  decs = new String(num%Math.pow(10,dec));
  num = Math.floor(num/Math.pow(10,dec)).toString();
  if (dec == 0) decs="";
  else if (dec == 1) decs = "." + decs;
  else
  {
  for ( i = decs.length; i < dec; i++)  decs ="0" + decs; 
  decs = "." + decs; 
  }
  return (((sign)?'':'-') + num + decs);
}

//******************************** URL Format **********************************

function chkurl(txtbox,txtname)
{

  if (!chknull(txtbox, txtname)) return false;

  if (txtbox.value.length > 0)
  {
    for (i=0;i<txtbox.value.length;i++)
    {
      cca = txtbox.value.charCodeAt(i);

      if ((cca>=65 && cca<=90) || (cca>=97 && cca<=122) || (cca>=45 && cca<=58) || cca==95)
      {
	//
      }	
      else
      {
        alert("Invalid Characters are not allowed in " + txtname + ".");
	txtbox.focus();
	return false;	
      }
    }	
  }         
  if(txtbox.value.indexOf('http://') + txtbox.value.indexOf('HTTP://') == -2 || txtbox.value.indexOf('http://') +      txtbox.value.indexOf('HTTP://') > 0 || txtbox.value.charCodeAt(0) == 64 || txtbox.value.indexOf("..") != -1 ||    txtbox.value.indexOf("__") != -1 || txtbox.value.indexOf("--") != -1 || txtbox.value.indexOf(".") == -1) 

  {
    alert("Invalid " + txtname + " Address. \n e.g. http://www.yourdomain.com");
    txtbox.focus();
    return false;	
  }	

  cca = txtbox.value.charCodeAt(txtbox.value.length-1);
  ccb = txtbox.value.charCodeAt(7);
  if (((cca>=65 && cca<=90) || (cca>=97 && cca<=122) || (cca>=48 && cca<=57)) && ((ccb>=65 && ccb<=90) || (ccb>=97 && ccb<=122) || (ccb>=48 && ccb<=57)))
  {
	//
  }	
  else
  {
    alert("Invalid " + txtname + " Address. \n e.g. http://www.yourdomain.com");
    txtbox.focus();
    return false;	
  }

  return true;
}


//********************* Authenticate Date is not null **********

function chkdate(txtbox, txtname)
{
  if (!chknull(txtbox, txtname)) return false;
  return true;
}

//******************************** Format Date **********************************

function DateFormat(vDateName, vDateValue, e, dateCheck, dateType) {
vDateType = dateType;
if (vDateValue == "~") {
alert("AppVersion = "+navigator.appVersion+" \nNav. 4 Version = "+isNav4+" \nNav. 5 Version = "+isNav5+" \nIE Version = "+isIE4+" \nYear Type = "+vYearType+" \nDate Type = "+vDateType+" \nSeparator = "+strSeperator);
vDateName.value = "";
vDateName.focus();
return true;
}
var whichCode = (window.Event) ? e.which : e.keyCode;
if (vDateValue.length > 8 && isNav4) {
if ((vDateValue.indexOf("-") >= 1) || (vDateValue.indexOf("/") >= 1))
return true;
}
var alphaCheck = " abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ/-";
if (alphaCheck.indexOf(vDateValue) >= 1) {
if (isNav4) {
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
else {
vDateName.value = vDateName.value.substr(0, (vDateValue.length-1));
return false;
   }
}
if (whichCode == 8) //Ignore the Netscape value for backspace. IE has no value
return false;
else {
var strCheck = '47,48,49,50,51,52,53,54,55,56,57,58,59,95,96,97,98,99,100,101,102,103,104,105';
if (strCheck.indexOf(whichCode) != -1) {
if (isNav4) {
if (((vDateValue.length < 6 && dateCheck) || (vDateValue.length == 7 && dateCheck)) && (vDateValue.length >=1)) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
if (vDateValue.length == 6 && dateCheck) {
var mDay = vDateName.value.substr(2,2);
var mMonth = vDateName.value.substr(0,2);
var mYear = vDateName.value.substr(4,4)
if (mYear.length == 2 && vYearType == 4) {
var mToday = new Date();
var checkYear = mToday.getFullYear() + 30; 
var mCheckYear = '20' + mYear;
if (mCheckYear >= checkYear)
mYear = '19' + mYear;
else
mYear = '20' + mYear;
}
var vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
if (!dateValid(vDateValueCheck)) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
return true;
}
else {
if (vDateValue.length >= 8  && dateCheck) {
if (vDateType == 1) // mmddyyyy
{
var mDay = vDateName.value.substr(2,2);
var mMonth = vDateName.value.substr(0,2);
var mYear = vDateName.value.substr(4,4)
vDateName.value = mMonth+strSeperator+mDay+strSeperator+mYear;
}
if (vDateType == 2) // yyyymmdd
{
var mYear = vDateName.value.substr(0,4)
var mMonth = vDateName.value.substr(4,2);
var mDay = vDateName.value.substr(6,2);
vDateName.value = mYear+strSeperator+mMonth+strSeperator+mDay;
}
if (vDateType == 3) // ddmmyyyy
{
var mMonth = vDateName.value.substr(2,2);
var mDay = vDateName.value.substr(0,2);
var mYear = vDateName.value.substr(4,4)
vDateName.value = mDay+strSeperator+mMonth+strSeperator+mYear;
}
var vDateTypeTemp = vDateType;
vDateType = 1;
var vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
if (!dateValid(vDateValueCheck)) {
alert("Invalid Date\nPlease Re-Enter");
vDateType = vDateTypeTemp;
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
vDateType = vDateTypeTemp;
return true;
}
else {
if (((vDateValue.length < 8 && dateCheck) || (vDateValue.length == 9 && dateCheck)) && (vDateValue.length >=1)) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
         }
      }
   }
}
else {
if (((vDateValue.length < 8 && dateCheck) || (vDateValue.length == 9 && dateCheck)) && (vDateValue.length >=1)) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
return true;
}
if (vDateValue.length >= 8 && dateCheck) {
if (vDateType == 1) // mm/dd/yyyy
{
var mMonth = vDateName.value.substr(0,2);
var mDay = vDateName.value.substr(3,2);
var mYear = vDateName.value.substr(6,4)
}
if (vDateType == 2) // yyyy/mm/dd
{
var mYear = vDateName.value.substr(0,4)
var mMonth = vDateName.value.substr(5,2);
var mDay = vDateName.value.substr(8,2);
}
if (vDateType == 3) // dd/mm/yyyy
{
var mDay = vDateName.value.substr(0,2);
var mMonth = vDateName.value.substr(3,2);
var mYear = vDateName.value.substr(6,4)
}
if (vYearLength == 4) {
if (mYear.length < 4) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.value = "";
vDateName.focus();
return true;
   }
}
var vDateTypeTemp = vDateType;
vDateType = 1;
var vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
if (mYear.length == 2 && vYearType == 4 && dateCheck) {
var mToday = new Date();
var checkYear = mToday.getFullYear() + 30; 
var mCheckYear = '20' + mYear;
if (mCheckYear >= checkYear)
mYear = '19' + mYear;
else
mYear = '20' + mYear;
vDateValueCheck = mMonth+strSeperator+mDay+strSeperator+mYear;
if (vDateTypeTemp == 1) // mm/dd/yyyy
vDateName.value = mMonth+strSeperator+mDay+strSeperator+mYear;
if (vDateTypeTemp == 3) // dd/mm/yyyy
vDateName.value = mDay+strSeperator+mMonth+strSeperator+mYear;
} 
if (!dateValid(vDateValueCheck)) {
alert("Invalid Date\nPlease Re-Enter");
vDateType = vDateTypeTemp;
vDateName.value = "";
vDateName.focus();
return true;
}
vDateType = vDateTypeTemp;
return true;
}
else {
if (vDateType == 1) {
if (vDateValue.length == 2) {
vDateName.value = vDateValue+strSeperator;
}
if (vDateValue.length == 5) {
vDateName.value = vDateValue+strSeperator;
   }
}
if (vDateType == 2) {
if (vDateValue.length == 4) {
vDateName.value = vDateValue+strSeperator;
}
if (vDateValue.length == 7) {
vDateName.value = vDateValue+strSeperator;
   }
} 
if (vDateType == 3) {
if (vDateValue.length == 2) {
vDateName.value = vDateValue+strSeperator;
}
if (vDateValue.length == 5) {
vDateName.value = vDateValue+strSeperator;
   }
}
return true;
   }
}
if (vDateValue.length == 10&& dateCheck) {
if (!dateValid(vDateName)) {
alert("Invalid Date\nPlease Re-Enter");
vDateName.focus();
vDateName.select();
   }
}
return false;
}
else {
// If the value is not in the string return the string minus the last
// key entered.
if (isNav4) {
vDateName.value = "";
vDateName.focus();
vDateName.select();
return false;
}
else
{
vDateName.value = vDateName.value.substr(0, (vDateValue.length-1));
return false;
         }
      }
   }
}
function dateValid(objName) {
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 strMonthArray = new Array(12);
strMonthArray[0] = "Jan";
strMonthArray[1] = "Feb";
strMonthArray[2] = "Mar";
strMonthArray[3] = "Apr";
strMonthArray[4] = "May";
strMonthArray[5] = "Jun";
strMonthArray[6] = "Jul";
strMonthArray[7] = "Aug";
strMonthArray[8] = "Sep";
strMonthArray[9] = "Oct";
strMonthArray[10] = "Nov";
strMonthArray[11] = "Dec";
strDate = objName;
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;
}
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;
      }
   }
}
return true;
}
function LeapYear(intYear) {
if (intYear % 100 == 0) {
if (intYear % 400 == 0) { return true; }
}
else {
if ((intYear % 4) == 0) { return true; }
}
return false;
}

/////////////////////////////ADD NEW FUNCTION///////////////////////////////////////////////////////////////////////////////////
/****************************COMPARE TWO DATES*****************************************************************/

function chkdates(ToDD,ToMM,ToYY,txtTo,FromDD,FromMM,FromYY,txtFrom)	
{
  if(!chknull(ToDD,txtTo) || !chknull(FromDD,txtFrom))
  {
		return false;
  }
  else
  { 	
	if(parseInt(FromDD.value) < parseInt(ToDD.value) && parseInt(FromMM.value) <= parseInt(ToMM.value) && parseInt(FromYY.value) <= parseInt(ToYY.value))
	{
		alert(txtFrom+" must be greater than "+txtTo+".")	
		return false;
	}
	else if(parseInt(FromMM.value) < parseInt(ToMM.value) && parseInt(FromYY.value) <= parseInt(ToYY.value))
	{
		alert(txtFrom+" must be greater than "+txtTo+".")	
		return false;
	}
	else if(parseInt(FromYY.value) < parseInt(ToYY.value))
	{
		alert(txtFrom+" must be greater than "+txtTo+".")	
		return false;
	}
	else
		return true;	
  }
}
/****************************CHECK DECIMAL*****************************************************************/
function chkdecimal(txtbox,txtname)
{
			found=0			 
			strqty = new String();
			strqty = txtbox.value;			
			for(i=0;i<strqty.length;i++) 
			{				
				if(strqty.charAt(i)=='.')
				{
					found=1;
					break;
				}	
			}
			if(found==1)
			{
				alert("Decimal value is not allowed in "+txtname+".")
				txtbox.focus();
				txtbox.select();
				return false;	
			}
			else
				return true;
}

/****************************CHECK DECIMAL FORMAT*****************************************************************/
function chkdecimalformat(txtbox,txtname,maxint,maxdec){
	if(!chknumber(txtbox, txtname)) return false;
	found=0;		
	countdec = 0;
	countint = 0;	 	 
	strqty = new String();
	strqty = txtbox.value;			
	for(i=0;i<strqty.length;i++){				
		if(strqty.charAt(i)=='.')
				found=1;					
				
		if(found==1)				
			countdec = countdec + 1;				
		else				
			countint = countint + 1;	 	 				
	}
	countdec = countdec - 1;
	
	NumberFormat="";
	for(i=0;i<maxint;i++){
		NumberFormat = NumberFormat + "9";
	}
	NumberFormat = NumberFormat + ".";
	for(i=0;i<maxdec;i++){
		NumberFormat = NumberFormat + "9";
	}
			
	if(parseInt(countint) > parseInt(maxint)){
		alert("Invalid format in "+txtname+", please follow the format "+NumberFormat+".")
		txtbox.focus();
		return false;
	}else if(parseInt(countdec) > parseInt(maxdec)){
		alert("Invalid format in "+txtname+", please follow the format "+NumberFormat+".")
		txtbox.focus();
		return false;
	}else
		return true;
}

function chknumber(txtbox, txtname){
  if (!chknull(txtbox, txtname)) return false;  
  if (!chkchr(txtbox,txtname)) return false;    
  return true; 
}
function chkdecimalformat(txtbox,txtname,maxint,maxdec){
	if(!chknumber(txtbox, txtname)) return false;
	found=0;		
	countdec = 0;
	countint = 0;	 	 
	strqty = new String();
	strqty = txtbox.value;			
	for(i=0;i<strqty.length;i++){				
		if(strqty.charAt(i)=='.')
				found=1;					
				
		if(found==1)				
			countdec = countdec + 1;				
		else				
			countint = countint + 1;	 	 				
	}
	countdec = countdec - 1;
	
	NumberFormat="";
	for(i=0;i<maxint;i++){
		NumberFormat = NumberFormat + "9";
	}
	NumberFormat = NumberFormat + ".";
	for(i=0;i<maxdec;i++){
		NumberFormat = NumberFormat + "9";
	}
			
	if(parseInt(countint) > parseInt(maxint)){
		alert("Invalid format in "+txtname+", please follow the format "+NumberFormat+".")
		txtbox.focus();
		return false;
	}else if(parseInt(countdec) > parseInt(maxdec)){
		alert("Invalid format in "+txtname+", please follow the format "+NumberFormat+".")
		txtbox.focus();
		return false;
	}else
		return true;
}


function AddOneOption(fieldSrc,lblSrc,fieldDest,lblDesc){
  if(fieldSrc.length==1)
		alert("No "+lblSrc+" to select!");
  else{	
  	i=fieldSrc.selectedIndex;  	
	if (i==-1 || i==0 ){
		alert("First select a "+lblSrc+".");
		if(fieldSrc.length > 1)
			fieldSrc.options[1].selected=true;		
	/*}else if (i==0) {
			fieldSrc.options[0].selected=false;
			if(fieldSrc.length > 1)
				fieldSrc.options[1].selected=true;			
	*/			
	}else{			
		//SHIFTING THE SELECTED OPTIONS
		for(counter=1;counter<fieldSrc.length;counter++){
			if(fieldSrc.options[counter].selected==true){	
				if(i!=0){
					var opt2 = new Option()
					opt2.value=fieldSrc.options[counter].value
					opt2.text=fieldSrc.options[counter].text		
					fieldDest.add(opt2)						
					delete opt2;		
				}	
			}//end if
		}//end for
		//DELETING THE SHIFTED OPTIONS
		for(counter=1;counter<fieldSrc.length;counter++){
			if(fieldSrc.options[counter].selected==true){						
				fieldSrc.options[counter]=null										
				counter--;
			}//end if
		}//end for
			
    }//end if
  }//end if
  if(fieldSrc.length>1)
		fieldSrc.options[1].selected=true;				  
}
	
function AddAllOptions(fieldSrc,lblSrc,fieldDest,lblDesc){
  if(fieldSrc.length==1)
		alert("No "+lblSrc+" to select!");
  else{		
  		//SHIFTING ALL THE UNSELECTED OPTIONS
		for(counter=1;counter<fieldSrc.length;counter++){
			if(fieldSrc.options[counter].selected==false){	
					var opt2 = new Option()
					opt2.value=fieldSrc.options[counter].value
					opt2.text=fieldSrc.options[counter].text		
					fieldDest.add(opt2)						
					delete opt2;		
			}//end if
		}//end for
		//DELETING THE SHIFTED OPTIONS
		for(counter=1;counter<fieldSrc.length;counter++){
			if(fieldSrc.options[counter].selected==false){						
				fieldSrc.options[counter]=null										
				counter--;
			}else if(fieldSrc.options[counter].selected==true){						
				fieldSrc.options[counter].selected=false;
			}//end if
		}//end for	  
  }//end if
}



///////////////////////////////////////////////////////////////////////////////////////////
//Function to chk text number and spaces
//Params --> Object,Object value length,Object Label
function chktxtnumspace(txtbox, txtlen, txtname){
  if (!chknull(txtbox, txtname)) return false;
  if (!chkmax(txtbox, txtlen, txtname)) return false;
  if (!chkdgt(txtbox, txtname)) return false;

  if (txtbox.value.length > 0) {
    for (i=0;i<txtbox.value.length;i++){
      if(txtbox.value.charAt(i)==' '){
			alert("Space is not allowed in " + txtname + ".");
			txtbox.focus();
			return false;	
	  }
	  
      cca = txtbox.value.charCodeAt(i);
      ccb = txtbox.value.charCodeAt(txtbox.value.length-1);

      if ((cca>=65 && cca<=90) || (cca>=97 && cca<=122) || (cca>=48 && cca<=57) || (txtbox.value.charCodeAt(0) != 32 &&       cca==32 && ccb != 32))      {
	//
      }else{      		
        alert("Invalid Characters are not allowed in " + txtname + ".");
		txtbox.focus();
		return false;	
      }
    }	
  }         
  return true;
}
function imgOn(imgName,Newimg)
{
	document.images[imgName].src=Newimg
}
