function valida() {
	rut_val = document.ingresa_usu.rec_rut.value;
	clave = document.ingresa_usu.clave_aux.value;
	if ( rut_val.length == 0 ) 
	{
		alert( "Ingrese su R.U.T.");
		document.ingresa_usu.rec_rut.focus();
		return;
	}
	if ( clave.length == 0 ) 
	{
		alert( "Ingrese su Clave.");
		document.ingresa_usu.clave_aux.focus();
		return;
	}
	if ( !checkRutField(document.ingresa_usu.rec_rut.value) )
	{	
		return;
	}
	if ( clave.length < 4 && clave.length > 8 )
	{
		alert("La clave debe poseer un largo mínimo de 4 dígitos y máximo de 8 dígitos.");
		document.ingresa_usu.clave_aux.focus();
		document.ingresa_usu.clave_aux.select();
		return;
	}
	document.ingresa_usu.clave.value = document.ingresa_usu.clave_aux.value;
	var tmpstr = "";	
	for ( i=0; i < rut_val.length ; i++ )
		if ( rut_val.charAt(i) != ' ' && rut_val.charAt(i) != '.' && rut_val.charAt(i) != '-' )
			tmpstr = tmpstr + rut_val.charAt(i);
	rut_val = tmpstr;
	rut_valor = rut_val.substring(0,rut.length);
	if ( rut_valor > 50000000)
	{
		alert( "El R.U.T. corresponde a una empresa, ingrese a través del portal empresas.");	
		document.ingresa_usu.rec_rut.value = "";
		document.ingresa_usu.clave_aux.value = "";
		document.ingresa_usu.rec_rut.focus();
		return;
	}
	document.ingresa_usu.rut.value = rut_val.substring(0,rut.length);	
	document.ingresa_usu.dig.value = rut_val.substring(rut.length,rut.length+1);
	document.ingresa_usu.rec_rut.value = "";
	document.ingresa_usu.clave_aux.value = "";
	document.ingresa_usu.submit();
}
function checkRutField(rut)
{
	var tmpstr = "";
	for ( i=0; i < rut.length ; i++ )
		if ( rut.charAt(i) != ' ' && rut.charAt(i) != '.' && rut.charAt(i) != '-' )
			tmpstr = tmpstr + rut.charAt(i);
	rut = tmpstr;
	largo = rut.length;
// [VARM+]
	tmpstr = "";
	for ( i=0; rut.charAt(i) == '0' ; i++ );
		for (; i < rut.length ; i++ )
			tmpstr = tmpstr + rut.charAt(i);
	rut = tmpstr;
	largo = rut.length;
// [VARM-]
	if ( largo < 2 )
	{
		alert("Debe ingresar el rut completo.");
		document.ingresa_usu.rec_rut.focus();
		document.ingresa_usu.rec_rut.select();
		return false;
	}
	for (i=0; i < largo ; i++ )
	{
		if ( rut.charAt(i) != "0" && rut.charAt(i) != "1" && rut.charAt(i) !="2" && rut.charAt(i) != "3" && rut.charAt(i) != "4" && rut.charAt(i) !="5" && rut.charAt(i) != "6" && rut.charAt(i) != "7" && rut.charAt(i) !="8" && rut.charAt(i) != "9" && rut.charAt(i) !="k" && rut.charAt(i) != "K" )
		{
			alert("El valor ingresado no corresponde a un R.U.T valido.");
			document.ingresa_usu.rec_rut.focus();
			document.ingresa_usu.rec_rut.select();
			return false;
		}
	}

	if ( checkDV(rut) )
		return true;
	return false;
}
function checkDV( crut )
{
	largo = crut.length;
	if ( largo < 2 )
	{
		alert("Debe ingresar el rut completo.");
		document.ingresa_usu.rec_rut.focus();
		document.ingresa_usu.rec_rut.select();
		return false;
	}
	if ( largo > 2 )
		rut = crut.substring(0, largo - 1);
	else
		rut = crut.charAt(0);
	dv = crut.charAt(largo-1);
	checkCDV( dv );
	if ( rut == null || dv == null )
		return 0;
	var dvr = '0';
	suma = 0;
	mul = 2;
	for (i= rut.length -1 ; i >= 0; i--)
	{
		suma = suma + rut.charAt(i) * mul;
		if (mul == 7)
			mul = 2;
		else
			mul++;
	}
	res = suma % 11;
	if (res==1)
		dvr = 'k';
	else if (res==0)
		dvr = '0';
	else
	{
		dvi = 11-res;
		dvr = dvi + "";
	}
	if ( dvr != dv.toLowerCase() )
	{
		alert("EL rut es incorrecto.");
		document.ingresa_usu.rec_rut.focus();
		document.ingresa_usu.rec_rut.value = "";
		return false;
	}
	return true;
}
function checkCDV( dvr )
{
	dv = dvr + "";
	if ( dv != '0' && dv != '1' && dv != '2' && dv != '3' && dv != '4' && dv != '5' && dv != '6' && dv != '7' && dv != '8' && dv != '9' && dv != 'k'  && dv != 'K')
	{
		alert("Debe ingresar un digito verificador valido.");
		document.ingresa_usu.rec_rut.focus();
		document.ingresa_usu.rec_rut.select();
		return false;
	}
	return true;
}
