/*
96 ... 105 => 0 ... 9  with Num Lock On the additional pad
107, 187 => + minus
109, 189 => - plus
110 => delete
190 => . dot
*/
function __CheckDigit(me)
{
  if (event.keyCode < 65) return true;
  if ((event.keyCode > 95) && (event.keyCode < 106)) return true;
  // - or + must be the first character in the string
  if (me.value.length==0){
    switch(event.keyCode){
		case 107: // +
		case 109: // -
		case 110: // del
		case 187: // +
		case 189: return true; // -
    }
  }
  event.returnValue = 0;
  return false;
}
function __CheckDigitOnly(me)
{
  if (event.keyCode < 32) return true;
  if ((event.keyCode > 47) && (event.keyCode < 58)) return true;
  if ((event.keyCode > 95) && (event.keyCode < 106)) return true;
  switch (event.keyCode){
	case 37: // arrow left
	case 39: // arrow right
	case 46: // del
	case 110: return true; // del
  }
  event.returnValue = 0;
  return false;
}
function __CheckDigit_dot(me, plusminus)
{
  var i, dot=0;
  if (event.keyCode < 58) return true;
  if ((event.keyCode > 95) && (event.keyCode < 106)) return true;
  // if we have to check plus & minus
  if (plusminus) {
	if (me.value.length==0){
	  switch(event.keyCode){
	    case 107:
	    case 109:
		case 110:
	    case 187:
	    case 189: return true;
	  }
	}
  }
  if (event.keyCode == 190){
	for (i = 0; i<me.value.length; i++)
	{
		if(me.value.charAt(i) == '.') dot++;
	}
	if ( dot == 0 ) return true;
  }
  event.returnValue = 0;
  return false;
}
function __CheckDigitStr(me)
{
  var i, dot = 0;
  var dotpos = -1;
  // special characters  //  and 0...9
  if (event.keyCode <= 57) return true;
  if ((event.keyCode > 95) && (event.keyCode < 106)) return true;
  if (event.keyCode == 110) return true;
  // must only one . (dot control)
  if (event.keyCode == 190){
	for (i = 0; i<me.value.length; i++)
	{
		if(me.value.charAt(i) == '.') dot++;
	}
	if ( dot == 0 ) return true;
  }
  event.returnValue = 0;
  return false;
}
function __CheckDigitPhone(me)
{
  if (event.keyCode < 65) return true;
  if ((event.keyCode > 95) && (event.keyCode < 106)) return true;
  // - or + must be the first character in the string
  switch(event.keyCode){
    case 109:
    case 110:
    case 189: return true;
  }
  event.returnValue = 0;
  return false;
}
