////// Módulo de revisión de datos - en JavaScript -->

//Funciones	: JSTrim, LTrim, RTrim

	function RellenaCerosRUT(RUT) {
		var ceros = "0000000000000";
		RUT = ceros.substr(0,12-RUT.length) + RUT;
		return(RUT);
	}



  function RevisaRUT(RUT) {
	var ceros = "0000000000000";
	var checkOK = "0123456789--Kk";
	var checkStr = RUT.value;
	var allValid = true;
	var txtlargo = 0;
	var txtprincip = "1234567890123";
	var txtdigitover = "x";
	var txtrut = "1234567890123-5";

	txtlargo = RUT.length;
	/******** Verifica largos límites ********/
	if (txtlargo<3) return(false);
	if (txtlargo>15) return(false);


	txtprincip = RUT.substr(0,txtlargo-2);
	txtdigitover = RUT.substr(txtlargo-1,1);
	txtdigitover.toUpperCase();

	/******** Verifica caracteres ********/
	for (i = 0;  i < RUT.length;  i++) {
		ch = RUT.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j)) break;

		if (j == checkOK.length) { allValid = false;  break;  }
	}
	if (!allValid) return (false);


	/******** Se eliminan espacios, y se rellena con ceros hasta llegar a 15 ********/

	txtrut = ceros.substr(0,txtrut.length-txtlargo) + RUT;


	/****** Se verifica el dígito ver ********/
	var  Suma = 0
	var  Aux = "8765432765432"
	var digitos = "123456789K0"
	for ( i=0 ; i<13 ; i++)	{
		Suma = Suma + Number(txtrut.substr(i,1)) * Number(Aux.substr(i,1));
	}

	Dig = digitos.substr(11 - (Suma % 11) - 1, 1)
	if (Dig != txtdigitover.toUpperCase()) return (false);

    return (true);
  }


  function RevisaNombre(Nombre) {
	var checkOK = "ABDCEFGHIJKLRMNÑOPQRSTUVWXYZabcdefghijklmnñopqrstuvwxyzáéíóúÁÉÍÓÚ'- ";
	var checkStr = Nombre.value;
	var allValid = true;
	/******** Verifica caracteres ********/
	for (i = 0;  i < Nombre.length;  i++) {
		ch = Nombre.charAt(i);
		for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j)) break;

		if (j == checkOK.length) { allValid = false;  break;  }
	}
	if (!allValid) return (false);
	return (true);
  }



  function GetCookie(name) {
    var dcookie = document.cookie;
    var cname = name + "=";
    var clen = dcookie.length;
    var cbegin = 0;

	while (cbegin<clen) {
	var vbegin = cbegin + cname.length;
		if(dcookie.substring(cbegin,vbegin) == cname) {
		var vend = dcookie.indexOf(";", vbegin);
			if(vend == -1) vend = clen;
			return unescape(dcookie.substring(vbegin, vend));
		}
	cbegin = dcookie.indexOf(" ", cbegin) + 1;
		if(cbegin == 0) break;
	}
	return (null);
  }

  function ComboVacio(combo,valorvacio) {
	if( combo.options[combo.selectedIndex].value == valorvacio) return (true);
	return(false);
  }


  function ComboValue(combo) {
	return (combo.options[combo.selectedIndex].value);
  }


/*
--------------------------------------------------------------------------------------------------------------
Nombre		: JSTrim
Descripción	: Elimina todos los espacios en blanco a un string, ya sea en el inicio o al final del string.
Obs		: Es similar al Trim() de VB
*/

function JSTrim(cadena){
  return(RTrim(LTrim(cadena)));
}


/*
--------------------------------------------------------------------------------------------------------------
Nombre		: LTrim
Descripción	: Elimina todos los espacios en blanco ubicados al principio o a la izquierda de un string
*/

function LTrim(cadena){
  var ch=" ";

  for(var i=0; i<cadena.length; i++)
    if (cadena.charAt(i) != ch)
      break;

  return(cadena.substr(i));
}


/*
--------------------------------------------------------------------------------------------------------------
Nombre		: RTrim
Descripción	: Elimina todos los espacios en blanco ubicados al final o a la derecha de un string
*/

function RTrim(cadena){
  var ch=" ";
  var intCont=0;

  for(var i=cadena.length-1; i>=0; i--)
    if (cadena.charAt(i) == ch)  
      intCont++
    else  
      break;
    
  return(cadena.substr(0,(cadena.length-intCont)));
}