
 function getTarget(e) {
  // IE5
   if (e.srcElement) {
    return e.srcElement;
   }
    if (e.target) {
    return e.target;
   }
 }

  function getKeyCode(e) {
 //IE5
 if (e.srcElement) {
  return e.keyCode
 }
  // NC5
  if (e.target) {
   return e.which
  }
 }

 function dateMask(event) {
   var sMask = "0123456789";
   var KeyTyped = String.fromCharCode(getKeyCode(event));
   // IE only version var KeyTyped = String.fromCharCode(window.event.keyCode);
   // ** IE only var srcObject = window.event.srcElement;
   var targ = getTarget(event);
   //alert(window.event.keyCode);
   keyCount = targ.value.length;
   keyCode = getKeyCode(event);
   if (keyCode < 15) /* del, backspace and other movement characters are okay */ {
      return true;
   } else if (sMask.indexOf(KeyTyped.toString()) == -1) {
      return false;
   }

   keyEntered = KeyTyped;
   keyCount++;
   switch (keyCount) {
   case 2:
     targ.value += keyEntered + "/";
     break;
   case 5:
     targ.value += keyEntered + "/";
     break;
   default:
     return true;
   }
   return false;
}

function dateTimeMask(event) {
  var sMask = "0123456789";
  var KeyTyped = String.fromCharCode(getKeyCode(event));
  // IE only version var KeyTyped = String.fromCharCode(window.event.keyCode);
  // ** IE only var srcObject = window.event.srcElement;
  var targ = getTarget(event);
  //alert(window.event.keyCode);
  keyCount = targ.value.length;
  keyCode = getKeyCode(event);
  if (keyCode < 15) /* del, backspace and other movement characters are okay */ {
     return true;
  } else if (sMask.indexOf(KeyTyped.toString()) == -1) {
     return false;
  }

  keyEntered = KeyTyped;
  keyCount++;
  switch (keyCount) {
  case 2:
    targ.value += keyEntered + "/";
    break;
  case 5:
    targ.value += keyEntered + "/";
    break;
  case 10:
    targ.value += keyEntered + " ";
    break;
  case 13:
    targ.value += keyEntered + ":";
    break;
  default:
    return true;
  }
  return false;
}


 function cepMask(event) {
    var sMask = "0123456789";
    var KeyTyped = String.fromCharCode(getKeyCode(event));
    // IE only version var KeyTyped = String.fromCharCode(window.event.keyCode);
    // ** IE only var srcObject = window.event.srcElement;
    var targ = getTarget(event);
    //alert(window.event.keyCode);
    keyCount = targ.value.length;
    keyCode = getKeyCode(event);
    if (keyCode < 15) /* del, backspace and other movement characters are okay */ {
       return true;
    } else if (sMask.indexOf(KeyTyped.toString()) == -1) {
       return false;
    }

    keyEntered = KeyTyped;
    keyCount++;
    switch (keyCount) {
    case 2:
      targ.value += keyEntered + ".";
      break;
    case 6:
      targ.value += keyEntered + "-";
      break;
    default:
      return true;
    }
    return false;
 }

  function CurrencyFieldOnKeyPress(evt) {
		if (!NumericFieldOnKeyPress(evt))
		  return false;
    evt = (evt) ? evt : ((window.event) ? window.event : "")
    if (evt) {
        var elem = (evt.target) ? evt.target : evt.srcElement
        if (evt.type == "keypress") {
          FormataValor(elem, 13, evt);
        }
    }
  }

 function FormataValor(campo,tammax,teclapres) {
         var tecla = teclapres.keyCode;
         vr = campo.value;
         vr = vr.replace( "/", "" );
         vr = vr.replace( "/", "" );
         vr = vr.replace( ",", "" );
         vr = vr.replace( ".", "" );
         vr = vr.replace( ".", "" );
         vr = vr.replace( ".", "" );
         vr = vr.replace( ".", "" );
         tam = vr.length;

         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 ){
                          campo.value = vr ; }
                  if ( (tam > 2) && (tam <= 5) ){
                          campo.value = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ) ; }
                  if ( (tam >= 6) && (tam <= 8) ){
                          campo.value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ) ; }
                  if ( (tam >= 9) && (tam <= 11) ){
                          campo.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) ){
                          campo.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) ){
                          campo.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 NumericFieldOnKeyPress(evt) {
   evt = (evt) ? evt : ((window.event) ? window.event : "")
   if (evt) {
       var elem = (evt.target) ? evt.target : evt.srcElement
       if (evt.type == "keypress") {
         return e_Num(evt);
       }
   }
	 return true;
 }

 function e_Num(event){
     var sMask = "0123456789.,";
     var KeyTyped = String.fromCharCode(getKeyCode(event));
     // IE only version var KeyTyped = String.fromCharCode(window.event.keyCode);
     // ** IE only var srcObject = window.event.srcElement;
     var targ = getTarget(event);
     //alert(window.event.keyCode);
     keyCount = targ.value.length;
     keyCode = getKeyCode(event);
     if (keyCode < 15) /* del, backspace and other movement characters are okay */ {
        return true;
     } else if (sMask.indexOf(KeyTyped.toString()) == -1) {
        return false;
     }

     return true;
  }

  function e_double(event){
    var sMask = "0123456789.";
    var KeyTyped = String.fromCharCode(getKeyCode(event));
    // IE only version var KeyTyped = String.fromCharCode(window.event.keyCode);
    // ** IE only var srcObject = window.event.srcElement;
    var targ = getTarget(event);
    //alert(window.event.keyCode);
    keyCount = targ.value.length;
    keyCode = getKeyCode(event);
    if (keyCode < 15) /* del, backspace and other movement characters are okay */ {
       return true;
    } else if (sMask.indexOf(KeyTyped.toString()) == -1) {
       return false;
    }
    return true;
   }

 function e_Int(event){
     var sMask = "0123456789.";
     var KeyTyped = String.fromCharCode(getKeyCode(event));
     // IE only version var KeyTyped = String.fromCharCode(window.event.keyCode);
     // ** IE only var srcObject = window.event.srcElement;
     var targ = getTarget(event);
     //alert(window.event.keyCode);
     keyCount = targ.value.length;
     keyCode = getKeyCode(event);
     if (keyCode < 15) /* del, backspace and other movement characters are okay */ {
        return true;
     } else if (sMask.indexOf(KeyTyped.toString()) == -1) {
        return false;
     }
     return true;
  }

  function so_Num(event){
     var sMask = "0123456789";
     var KeyTyped = String.fromCharCode(getKeyCode(event));
     // IE only version var KeyTyped = String.fromCharCode(window.event.keyCode);
     // ** IE only var srcObject = window.event.srcElement;
     var targ = getTarget(event);
     //alert(window.event.keyCode);
     keyCount = targ.value.length;
     keyCode = getKeyCode(event);
     if (keyCode < 15) /* del, backspace and other movement characters are okay */ {
        return true;
     } else if (sMask.indexOf(KeyTyped.toString()) == -1) {
        return false;
     }

     return true;
  }

  function mascaraCep(evt) {
    var objeto = (evt.target) ? evt.target : evt.srcElement
    if (objeto.value.indexOf("-") == -1 && objeto.value.length > 5) {
      objeto.value = "";
    }
    if (objeto.value.length == 5){
      objeto.value += "-";
    }
  }

  function so_NumTraco(event){
     var sMask = "0123456789-";
     var KeyTyped = String.fromCharCode(getKeyCode(event));
     // IE only version var KeyTyped = String.fromCharCode(window.event.keyCode);
     // ** IE only var srcObject = window.event.srcElement;
     var targ = getTarget(event);
     //alert(window.event.keyCode);
     keyCount = targ.value.length;
     keyCode = getKeyCode(event);
     if (keyCode < 15) /* del, backspace and other movement characters are okay */ {
        return true;
     } else if (sMask.indexOf(KeyTyped.toString()) == -1) {
        return false;
     }

     return true;
  }
