function isIE(){
	if ((window.navigator.appName).indexOf('Explorer') > 0)
		return true;
	return false;
}

function formatarValorMonetario(objTextBox, SeparadorMilesimo, SeparadorDecimal, e) {

   var sep = 0;
   var key = '';
   var i = j = 0;
   var len = len2 = 0;
   var strCheck = '0123456789';
   var aux = aux2 = '';
   var retorno = isIE();
   var whichCode = (isIE()) ? e.keyCode : e.which;
  
   if ((whichCode == 13) || (whichCode == 0) || (whichCode == 8))  {
			   return true;
   }

   key = String.fromCharCode(whichCode); // Valor para o código da Chave

   if (strCheck.indexOf(key) == -1) return false; // Chave inválida
   len = objTextBox.value.length;
   for(i = 0; i < len; i++)
	   if ((objTextBox.value.charAt(i) != '0') && (objTextBox.value.charAt(i) != SeparadorDecimal)) break;
   aux = '';
   for(; i < len; i++)
	   if (strCheck.indexOf(objTextBox.value.charAt(i))!=-1) aux += objTextBox.value.charAt(i);
   aux += key;
   len = aux.length;

   if (len == 0) objTextBox.value = '';
   if (len == 1) objTextBox.value = '0'+ SeparadorDecimal + '0' + aux;
   if (len == 2) objTextBox.value = '0'+ SeparadorDecimal + aux;
   if (len > 2) {
	   aux2 = '';
	   for (j = 0, i = len - 3; i >= 0; i--) {
		   if (j == 3) {
			   aux2 += SeparadorMilesimo;
			   j = 0;
		   }
		   aux2 += aux.charAt(i);
		   j++;
	   }
	   objTextBox.value = '';
	   len2 = aux2.length;
	   for (i = len2 - 1; i >= 0; i--)
	   objTextBox.value += aux2.charAt(i);
	   objTextBox.value += SeparadorDecimal + aux.substr(len - 2, len);
   }
   return false;
}



/*
function formatarValorMonetario(fld, milSep, decSep, e) {
  var sep = 0;
  var key = '';
  var i = j = 0;
  var len = len2 = 0;
  var strCheck = '0123456789';
  var aux = aux2 = '';
  var whichCode = (isIE) ? e.keyCode : e.which;

  if (whichCode == 13) return true;  // Enter
  if (whichCode == 8) return true;  // Delete
  key = String.fromCharCode(whichCode);  // Get key value from key code
  if (strCheck.indexOf(key) == -1) return false;  // Not a valid key
  len = fld.value.length;
  if ( len > fld.maxLength ) return false;
  for(i = 0; i < len; i++)
  if ((fld.value.charAt(i) != '0') && (fld.value.charAt(i) != decSep)) break;
  aux = '';
  for(; i < len; i++)
  if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
  aux += key;
  len = aux.length;
  if (len == 0) fld.value = '';
  if (len == 1) fld.value = '0'+ decSep + '0' + aux;
  if (len == 2) fld.value = '0'+ decSep + aux;
  if (len > 2) {
    aux2 = '';
    for (j = 0, i = len - 3; i >= 0; i--) {
      if (j == 3) {
        aux2 += milSep;
        j = 0;
      }
      aux2 += aux.charAt(i);
      j++;
    }
    fld.value = '';
    len2 = aux2.length;
    for (i = len2 - 1; i >= 0; i--)
    fld.value += aux2.charAt(i);
    fld.value += decSep + aux.substr(len - 2, len);
  }
  return false;
}*/
