<!--
//----------------------------------------------------------------------------------
// Ex.: Checar se a data é válida
// onBlur = check_date(this)
//----------------------------------------------------------------------------------

function check_date(field){
var checkstr = "0123456789";
var DateField = field;
var Datevalue = "";
var DateTemp = "";
var seperator = "/";
var day;
var month;
var year;
var leap = 0;
var err = 0;
var i;
   err = 0;
   DateValue = DateField.value;
   /* Deleta todos os caracteres exceto de 0 a 9. */
   for (i = 0; i < DateValue.length; i++) {
	  if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
	     DateTemp = DateTemp + DateValue.substr(i,1);
	  }
   }
   DateValue = DateTemp;
   
   if (DateValue.length == 6) {
      DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); }
   if (DateValue.length != 8) {
      err = 19;}
   
   year = DateValue.substr(4,4);
   if (year == 0) {
      err = 20;
   }
   
   month = DateValue.substr(2,2);
   if ((month < 1) || (month > 12)) {
      err = 21;
   }
   
   day = DateValue.substr(0,2);
   if (day < 1) {
     err = 22;
   }
  
   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
      leap = 1;
   }
   if ((month == 2) && (leap == 1) && (day > 29)) {
      err = 23;
   }
   if ((month == 2) && (leap != 1) && (day > 28)) {
      err = 24;
   }
   
   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
      err = 25;
   }
   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
      err = 26;
   }
   
   if ((day == 0) && (month == 0) && (year == 00)) {
      err = 0; day = ""; month = ""; year = ""; seperator = "";
   }

   if (err == 0) {
      DateField.value = day + seperator + month + seperator + year;
   }
   
   else {
      alert("Data inválida");
      DateField.value = ""
   }
}
// -->
//----------------------------------------------------------------------------------
// Ex.: Colocar nos dois eventos para bloquear tanto no Explorer quando no FireFox
// onKeyPress = return Tecla(event)
// onKeyUp = javascript: validar_num(this)
//----------------------------------------------------------------------------------

function limpa_string(S) 
{
	var Digitos = "0123456789/-.() ";
	var temp = "";
	var digito = "";

	for (var i=0; i<S.length; i++)
	{
		digito = S.charAt(i);
		if (Digitos.indexOf(digito)>=0)
		{
		temp=temp+digito
		}
	}
	return temp
}

function validar_num(campo)
{
	nome=campo.name
	num = limpa_string(campo.value);
	campo.value = num;
}

//------------------------------------------------------------------------------------
// Ex.: no campo que vai ter o texto caixa alte, colocar os eventos abaixo.
//  onBlur = TextBoxCaixaAlta_OnBlur(this.value, this.form.name, this.name)
//  onKeyUp = TextBoxCaixaAlta_OnKeyUp(this.value, this.form.name, this.name)
//------------------------------------------------------------------------------------

function TextBoxCaixaAlta_OnKeyUp(fsValor, foForm, foNome) 
{ 
  if (window.event.keyCode >= 65 && window.event.keyCode <= 90)
  {
    x = new String(document.forms[foForm].elements[foNome].value);
	document.forms[foForm].elements[foNome].value = x.toUpperCase();
  }
}

function TextBoxCaixaAlta_OnBlur(fsValor, foForm, foNome)
{ 	
  var tam=0;
  x = new String(document.forms[foForm].elements[foNome].value);
  while (tam != x.length)
  {
    tam = x.length;
	x = x.replace('\'', '');
  }
  document.forms[foForm].elements[foNome].value = x.toUpperCase();
}

//----------------------------------------------------------------
//MÁSCARA DE VALORES
// Ex. de data XX/XX/XXXX:
// onKeyPress = return txtBoxFormat(this, '99/99/9999', event) 
// Ex. de RG. XX.XXX.XXX-X :
// onKeyPress = return txtBoxFormat(this, '99.999.999-9', event)
// Ex. de telefone (XX)XXXX-XXXX :
// onKeyPress = return txtBoxFormat(this, '(99)9999-9999', event)
// Ex. de código XX-XXX :
// onKeyPress = return txtBoxFormat(this, '99-999', event)
//----------------------------------------------------------------

function txtBoxFormat(objeto, sMask, evtKeyPress) 
{
  var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

  if(document.all) 
  { // Internet Explorer
    nTecla = evtKeyPress.keyCode;
  } 
  else if(document.layers) 
  { // Nestcape
    nTecla = evtKeyPress.which;
  } 
  else 
  {
    nTecla = evtKeyPress.which;
    if (nTecla == 8) 
	{
        return true;
    }
  }

  sValue = objeto.value;

  // Limpa todos os caracteres de formatação que
  // já estiverem no campo.
  sValue = sValue.toString().replace( "-", "" );
  sValue = sValue.toString().replace( "-", "" );
  sValue = sValue.toString().replace( ".", "" );
  sValue = sValue.toString().replace( ".", "" );
  sValue = sValue.toString().replace( "/", "" );
  sValue = sValue.toString().replace( "/", "" );
  sValue = sValue.toString().replace( ":", "" );
  sValue = sValue.toString().replace( ":", "" );
  sValue = sValue.toString().replace( "(", "" );
  sValue = sValue.toString().replace( "(", "" );
  sValue = sValue.toString().replace( ")", "" );
  sValue = sValue.toString().replace( ")", "" );
  sValue = sValue.toString().replace( " ", "" );
  sValue = sValue.toString().replace( " ", "" );
  fldLen = sValue.length;
  mskLen = sMask.length;

  i = 0;
  nCount = 0;
  sCod = "";
  mskLen = fldLen;

  while (i <= mskLen) 
  {
    bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/") || (sMask.charAt(i) == ":"))
    bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

    if (bolMask) 
    {
      sCod += sMask.charAt(i);
      mskLen++; 
    }
    else 
    {
      sCod += sValue.charAt(nCount);
      nCount++;
    }
    i++;
  }

  objeto.value = sCod;

  if (nTecla != 8) 
  { // backspace
    if (sMask.charAt(i-1) == "9") 
    { // apenas números...
      return ((nTecla > 47) && (nTecla < 58)); 
    } 
    else 
    { // qualquer caracter...
      return true;
    } 
  }
  else 
  {
    return true;
  }
}
//-->
