function ComparaData(datevalue1, datevalue2){

	var vdate1 = new Array();
	vdate1 = datevalue1.split("/");
	var day1 = vdate1[0];
	var month1 = vdate1[1];
	var year1 = vdate1[2];

	var vdate2 = new Array();
	vdate2 = datevalue2.split("/");
	var day2 = vdate2[0];
	var month2 = vdate2[1];
	var year2 = vdate2[2];

	var d1=new Date(year1,month1,day1);
	var d2=new Date(year2,month2,day2);
		
	if(d1>d2) 
		return true;
	else
		return false;

}

function chkdate(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;
   
   strDate = datefield;

   if (strDate.length != 8 && strDate.length != 10) {
      return 99;
   }
   
   for (intElementNr = 0; intElementNr < strSeparatorArray.length; intElementNr++) {
      if (strDate.indexOf(strSeparatorArray[intElementNr]) != -1) {
         strDateArray = strDate.split(strSeparatorArray[intElementNr]);
         if (strDateArray.length != 3) {
            return 1;
         }
         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;
   }
   
   intday = parseInt(strDay, 10);
   if (isNaN(intday)) {
      return 2;
   }
   
   intMonth = parseInt(strMonth, 10);
      if (isNaN(intMonth)) {
         return 3;
      }
      
   intYear = parseInt(strYear, 10);
   if (isNaN(intYear)) {
      return 4;
   }
   
   if (intMonth>12 || intMonth<1) {
      return 5;
   }
   
   if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) {
      return 6;
   }
   
   if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) {
      return 7;
   }
   
   if (intMonth == 2) {
      if (intday < 1) {
         return 8;
      }
      if (LeapYear(intYear) == true) {
         if (intday > 29) {
            return 9;
         }
      }
      else {
         if (intday > 28) {
            return 10;
         }
      }
   }
   
   return 0;
}

function MaskText(oObj, strMask){

	var i;
	var strTexto = oObj.value;
	var intKeyCode = event.keyCode;

	if (strTexto.length == oObj.maxLength) return(true);

	for (i = strTexto.length; i <= strMask.length; i++){
		if (! (strMask.substr(i, 1) == "#" || strMask.substr(i, 1) == "A" || strMask.substr(i, 1) == "@")) {
			oObj.value += strMask.substr(i, 1);
		}
		else {
			break;
		}
	}
	
	if (strMask.substr(i, 1) == "#") {

		if (! (intKeyCode >= 48 && intKeyCode <= 57)) {
			event.keyCode = 0;
			return(true);
		}
		
	}

	if (strMask.substr(i, 1) == "A") {
		
		if ((intKeyCode >= 48 && intKeyCode <= 57)) {
			event.keyCode = 0;
			return(true);			
		}
		
	}
	
}
// ------------------------------------------------------------------------------------------------------
function MaskNumberInvert(oObj, strMask){

	var strTexto = SoNumero(oObj.value);
	var i = strMask.length;
	var z = strTexto.length;
	var intKeyCode = event.keyCode;
	
	var strFrag, strAux = '';

	var sCaract = String.fromCharCode(event.keyCode);

	event.keyCode = 0;

	if (! (intKeyCode >= 48 && intKeyCode <= 57)) {
		return(false);
	}
		


	while (i >= 0) {
	
		strFrag = strMask.substr(i, 1);
		
		if (strFrag != '#') {
			strAux = strFrag + strAux;
		}
		else {

			
			strAux = strTexto.substr(z, 1) + strAux;

			if (z < 1) {break};
			
			z--;
		}
	
		i--;
	}

	oObj.value = strAux + sCaract;
	
}

// ------------------------------------------------------------------------------------------------------
function MaskCC(oObj){

	var strMask = '@@@@@@@-@';
	var strTexto = SemSimbolos(oObj.value);
	var i = strMask.length;
	var z = strTexto.length;
	var intKeyCode = event.keyCode;
	
	var strFrag, strAux = '';

	var sCaract = String.fromCharCode(event.keyCode).toUpperCase();

	event.keyCode = 0;

	while (i >= 0) {
	
		strFrag = strMask.substr(i, 1);
		
		if (strFrag != '@') {
			strAux = strFrag + strAux;
		}
		else {

			
			strAux = strTexto.substr(z, 1) + strAux;

			if (z < 1) {break};
			
			z--;
		}
	
		i--;
	}

	oObj.value = strAux + sCaract;
	
}

// ------------------------------------------------------------------------------------------------------
//Exemplo: onChange="javascript:FormatFloatNumber(this, 2);"
function FormatFloatNumber(dNumero, iDecimais) {
	var sAux = "";
	var bTirouPonto = false;
	var bTratouSinal = false;

	for (var i = dNumero.value.length - 1; i > -1; i--) {
		var letra = dNumero.value.substring (i,i+1);
		if (letra == '.' || letra == ',') {
			if (!bTirouPonto) {
				sAux = "." + sAux;
				bTirouPonto = true;
			}
		}
		else if (letra == '-') {
			if (!bTratouSinal) {
				sAux = "-" + sAux;
				bTratouSinal = true;
			}
		}
		else if (! isNaN(letra)) {
			sAux = letra + sAux;
		}
	}
	if (isNaN(parseInt(sAux)) || sAux == '.'){
		dNumero.value = '0';
		return (0);
	}
	else
		if (iDecimais) sAux = parseFloat(sAux).toFixed(iDecimais);

	dNumero.value = sAux;
	return (sAux);
}
// ------------------------------------------------------------------------------------------------------
function MaskFloatNumber(dNumero, iDecimais) {
	var tecla = event.keyCode;
	if (! (tecla >= 48 && tecla <= 57)) {
		event.keyCode = 0;
		return(false);
	}
	
	vr = dNumero.value;
	vr = vr.replace( "/", "" );
	vr = vr.replace( "/", "" );
	vr = vr.replace( ",", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	vr = vr.replace( ".", "" );
	tam = dNumero.value.length;
	tammax = dNumero.maxLength;
	
	if (tammax == 0) {tammax = 20};

	if (tam < tammax && tecla != 8){ tam = vr.length + 1 ; }

	if (tecla == 8 ){	tam = tam - 1 ; }
		
	if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
		if ( tam <= 2 ){ 
	 		dNumero.value = vr ; }
	 	if ( (tam > 2) && (tam <= 5) ){
	 		dNumero.value = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 6) && (tam <= 8) ){
	 		dNumero.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 9) && (tam <= 11) ){
	 		dNumero.value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 12) && (tam <= 14) ){
	 		dNumero.value = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
	 	if ( (tam >= 15) && (tam <= 17) ){
	 		dNumero.value = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ;}
	}
		
}

// ------------------------------------------------------------------------------------------------------
function FormatarNumero(dNumero, iDecimais) {
   var sAux = "";
   var bTirouPonto = false;
	 var bTratouSinal = false;

   for (var i = dNumero.length - 1; i > -1; i--) {
      var letra = dNumero.substring (i,i+1);
      if (letra == '.' || letra == ',') {
         if (!bTirouPonto) {
            sAux = "." + sAux;
            bTirouPonto = true;
         }
      }
      else if (letra == '-') {
         if (!bTratouSinal) {
            sAux = "-" + sAux;
            bTratouSinal = true;
         }
			}
      else if (! isNaN(letra)) {
        sAux = letra + sAux;
      }
   }
   if (isNaN(parseInt(sAux)) || sAux == '.')
      return (0);
   else
	 		if (iDecimais) sAux = parseFloat(sAux).toFixed(iDecimais);

	 return (sAux);

}
// ------------------------------------------------------------------------------------------------------
function SoNumero(strTexto){

	var strAux = "";
	var i;
	
	
	for (i = 1; i <= strTexto.length; i++){
		if (! isNaN(strTexto.substr(i -1, 1))) {
			strAux += strTexto.substr(i -1, 1);
		}
	}
	
	return(strAux);

}

// --------------------------------------------------------------------
function NaoNulo(vValor, vDefault){

	if (vValor) {
		return(vValor);
	}
	else {
		return(vDefault);	
	}
}