function MM_findObj(n, d) { //v4.01
  var p, i, x;
  if (!d)
    d = document;
  if ((p = n.indexOf ("?")) > 0 && parent.frames.length) {
    d = parent.frames[n.substring(p+1)].document;
    n = n.substring (0,p);
  }
  if (!(x=d[n]) && d.all)
    x = d.all[n];
  for (i = 0;!x && i < d.forms.length; i++)
    x = d.forms[i][n];
  for (i = 0; !x && d.layers && i < d.layers.length; i++)
    x = MM_findObj (n, d.layers[i].document);
  if (!x && d.getElementById)
    x = d.getElementById(n);
  return x;
}

function MM_showHideLayers() { //v6.0
  var i, p, v, obj, args=MM_showHideLayers.arguments;
  for (i = 0; i < (args.length - 2); i += 3)
    if ((obj = MM_findObj (args[i])) != null) {
      v = args[i+2];
    if (obj.style) {
      obj = obj.style;
      v = (v == 'show') ? 'visible' : (v=='hide') ? 'hidden':v; 
    }
    obj.visibility = v;
  }
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
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;
     }

     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)); } // números de 0 a 9
       else { // qualquer caracter...
         return true;
       } }
     else {
       return true;
     }
}

function mudaFocoBySize(objOrigem, objDestino, intSize, e){
  //se a tecla for tab ou shift faz nada
  if(e!=null && document.all && (e.keyCode == 9 || e.keyCode == 16)) // Internet Explorer
    return true;
  else if(e!=null && document.layers && (e.keyCode == 9 || e.keyCode == 16)) // Nestcape
    return true;

  var tam = Number(objDestino.value.length);

  if(objOrigem.value.length == intSize){
    if(tam > 0 && objDestino.type == "text")
      objDestino.select();
    else
      objDestino.focus();
  } else if(objOrigem.value.length > intSize){
    objOrigem.value = objOrigem.value.substring(0, intSize);
    if(tam > 0 && objDestino.type == "text")
      objDestino.select();
    else
      objDestino.focus();
  }
  return true;
}
function number_format(obj, onlyInteger){
  var newValue = '';
  var curChar;
  var valid = /^[0-9]$/;
  var isDotted = false;
  var oi = onlyInteger == null ? false : onlyInteger;
  for(var i = 0; i < obj.value.length; i++){
    curChar = obj.value.substring(i, i+1);
    if((curChar == ',' || curChar == '.') && !isDotted && !oi){
      newValue += '.';
      isDotted = true;
    } else if(valid.test(curChar))
      newValue += curChar;
  }
  if(!isDotted && newValue.length > 0 && !oi)
    newValue += ".00";
  obj.value = newValue;
}

function LTrim(value) {  
  var re = /\s*((\S+\s*)*)/;
  return value.replace(re, "$1");
}

function RTrim(value) {
  var re = /((\s*\S+)*)\s*/;
  return value.replace(re, "$1");
}

function trim(value) {
  return LTrim(RTrim(value));
}

