<!--
///////////////////////////////////////////////////////////////////////////////////
//FUNCIONES QUE EXISTEN EN ESTE FICHERO
//	1.esNumerico(idobj)
//	2.esNumericoConSigno(idobj)
//	3.esReal(idobj)
//	4.esRealConSigno(idobj)
//	5.formatReal(obj,num_ent)
///////////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////////
// 1.
//////////////////////////////ESNUMERICO/////////////////////////////////////////////////////
//ESTA FUNCION COMPRUEBA QUE UN DATO SEA DE TIPO NUMERICO
///////////////////////////////////////////////////////////////////////////////////

function esNumerico(idobj){
  var chr;
  var valor=quitaBlancos(idobj.value);
  //idobj.value=valor
  for (var i=0;i<valor.length;i++){
    chr=valor.substring(i,i+1);
    if (chr<"0" || chr>"9")
      return false;
    }
  return true;
}

///////////////////////////////////////////////////////////////////////////////////
// 2.
//////////////////////////////esNumericoConSigno-////////////////////////////////////////
//ESTA FUNCION COMPRUEBA QUE UN DATO SEA NUMERICO CON SIGNO
///////////////////////////////////////////////////////////////////////////////////

function esNumericoConSigno(idobj){
//  if (idobj.value==null || idobj.value.length==0)
//    return true
  var valor=quitaBlancos(idobj.value);
//  idobj.value=valor

  var chr=valor.substring(0,1);
  if (chr!="+" && chr!="-"  && (chr<"0"||chr>"9") )
    return false;
  for (var i=1;i<valor.length;i++){
    chr=valor.substring(i,i+1);
    if (chr<"0"||chr>"9")
      return false;
    }
  i
  return true;
}


///////////////////////////////////////////////////////////////////////////////////
// 3.
//////////////////////////////esReal////////////////////////////////////////
//ESTA FUNCION COMPRUEBA QUE UN DATO SEA REAL
///////////////////////////////////////////////////////////////////////////////////
function esReal(idobj){
//if (idobj.value==null || idobj.value.length==0)
//    return true
  var valor=quitaBlancos(idobj.value);
//  idobj.value=valor

  var chr;
  var cnt1=0;
  var cnt2=0;

  for (var i=0;i<valor.length;i++){
    chr=valor.substring(i,i+1);

    if (chr==",")
	cnt1++;
    else
    {
	if (chr==".")
      	   cnt2++;
    	else
        {
     		if (chr<"0"||chr>"9")
     		return false;
        }
    }
  }
  //if ((cnt>1) || (cnt==0))
  if (cnt1>1) //hay mas de una coma
    return false;
  if (cnt2>1) //hay mas de un punto
    return false;

   // comprobar si ya ha realizado la conversion
   cont1=0;
   cont2=0;
   num = idobj.value;

   for(i=0;i<num.length;i++)
   {
	car = num.charAt(i)
	if (car==".")
	    cont1++;
	if (car==",")
	    cont2++;
   }
//   if (cont2==1 && (cont1==1 || cont1==0))
//     idobj.value=coma_por_punto(idobj.value);

return true;
}

///////////////////////////////////////////////////////////////////////////////////
// 4.
//////////////////////////////esRealconSigno////////////////////////////////////////
//ESTA FUNCION COMPRUEBA QUE UN DATO SEA REAL CON O SIN SIGNO
///////////////////////////////////////////////////////////////////////////////////

function esRealConSigno(idobj){

  var cnt1=0;
  var cnt2=0;
  var valor = idobj.value;

  if( valor == "" )
  {
    idobj.value=0;
    return true;
  }

  var chr=valor.substring(0,1);

  if (chr!="+" && chr!="-" && chr!="," && chr!="." && (chr<"0"||chr>"9") )
    return false;

  if (chr==",")
      cnt1++; // puede empezar por ,

  for (var i=1;i<valor.length;i++){
    chr=valor.substring(i,i+1);

    if (chr==",")
      cnt1++;
    else
    {
	if (chr==".")
	   cnt2++;
	else
	{
     		if (chr<"0"||chr>"9")
     		return false;
	}
     }
  }

  if (cnt1>1) //hay mas de una coma
    return false;

  if (cnt2>1) // hay mas de un punto
    return false;

   cont=0;
   num = idobj.value;
   for(i=0;i<num.length;i++)
   {
	car = num.charAt(i)
	if (car==",")
	    cont++;
   }
 //  if (cont>0)
//	  idobj.value=coma_por_punto(idobj.value);

   return true;
}

///////////////////////////////////////////////////////////////////////////////////
// 5.
//////////////////////////////formatReal////////////////////////////////////////
//ESTA FUNCION COMPRUEBA QUE UN DATO SEA REAL TENGA UN NUMERO CONTRETO DE DÍGITOS
//ENTEROS
//PARAMETROS:
//1.OBJ: objeto que contiene el dato a validar
//2.NUM_ENT: numero de dígitos enteros que debe tener el dato
///////////////////////////////////////////////////////////////////////////////////
function formatReal(obj,num_ent,num_dec){
//num_ent: da la posicion del punto porque el bucle empieza por cero
var cadena_entera="";
var cadena_real="";
	if (obj.value != "")
	{
	  if (esNumerico(obj))
	  {
		if (obj.value.length > num_ent)
		{
			alert("El campo decimal no tiene un formato correcto. Debe tener como máximo "+num_ent+" enteros y "+num_dec+" decimales");
			obj.focus();
			return false;
		}
          }
  	  else if (esReal(obj))
	  {
		cadena_entera=obj.value.substring(0,obj.value.indexOf("."));
		cadena_real=obj.value.substring(obj.value.indexOf(".")+1,obj.value.length);
		if (cadena_entera.length > num_ent || cadena_real.length > num_dec)
		{
			alert("El campo decimal no tiene un formato correcto. Debe tener como máximo "+num_ent+" enteros y "+num_dec+" decimales");
			obj.focus();
			return false;
		}
		else
		{
			return true;
		}
	 }
	 else
	 {
		alert("El campo decimal no tiene un formato correcto. Debe tener como máximo "+num_ent+" enteros y "+num_dec+" decimales");
		obj.focus()
		return false;
	 }
	}
	return true;
}
function coma_por_punto(valor)
{
	car=""
	tmp_valor=""
	num = new String(valor);

	for(i=0;i<num.length;i++)
	{
		car = num.charAt(i)
		if (car==",")
			tmp_valor = tmp_valor + ".";
		else
		{
			if (car!=".")
				tmp_valor = tmp_valor + car;
		}
	}
	return quitaBlancos(tmp_valor);
}

function punto_por_coma(valor)
{
	car=""
	tmp_valor=""
	num = new String(valor);

	for(i=0;i<num.length;i++)
	{
		car = num.charAt(i)
		if (car==".")
		   tmp_valor = tmp_valor + ",";
		else
		   tmp_valor = tmp_valor + car;
	}
	return quitaBlancos(tmp_valor);
}
function quita_puntos(v)
{
	num = new String(v);
	tmp_valor=""

	for (i=0;i<num.length;i++)
	{
		car = num.charAt(i);
		if (car!=".")
			tmp_valor=tmp_valor+car;
	}
	return tmp_valor;
}
// -->