function vacio(l){
	return (l.length == 0)
}

function isEmail(str) {
	//are regular expressions supported?
	var supported = 0;
	if (window.RegExp){
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}
	if (!supported) return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	return (!r1.test(str) && r2.test(str));
}

function isEmpty(texto){
	var i, aux;
	for (i=0; i<texto.length; i++){
		if (texto.charAt(i) != " "){
			aux += texto.charAt(i);
		}
	}
	return ((aux == null) || (aux.length == 0));
}

function isFecha(strFecha){
	strFecha = ReemplazarGuion(strFecha);
	var arrFecha = strFecha.split("/");
	if (arrFecha.length != 3){
		return false;
	}
	if (isNaN(arrFecha[0]) || isNaN(arrFecha[1]) || isNaN(arrFecha[2])){
		return false;
	}
	var intDia = new Number(arrFecha[0]);
	var intMes = new Number(arrFecha[1]);
	var intAno = new Number(arrFecha[2]);
	if (intDia < 1 || intDia > 31 || intMes < 1 || intMes > 12 || intAno < 0){
		return false;
	}
	if (intMes == 2){
		if ((intAno % 4 == 0 && intDia > 29) || (intAno % 4 != 0 && intDia > 28)){
			return false;
		}
	}
	if (intMes == 4 || intMes == 6 || intMes == 9 || intMes == 11){
		if (intDia > 30){
			return false;
		}
	}
	//strDia = "20" + intDia.toString;
	return true;
}
function isHora(StrHora){
    if (StrHora.length!=5){
	  alert('Entro en el largo');	
	  return false;
	}
    m = StrHora.charAt(0)
    m1 = StrHora.charAt(1)
    d = StrHora.charAt(2)
    c = StrHora.charAt(3)
    if (m >= 2 && m1 > 3){
	  alert('Entro en la hora');			
	  return false;
	}
    if (c > 5){
	  alert('Entro en los minutos');			
	  return false;
	}
    if (d != ':'){
	  alert('Entro en los :');			
	  return false
	}
    return true;
} 
function isRut(Rut){
	var Factor = 2, Sum = 0, i, PosGuion, PosDV, Caracter;
	var arrDV = new Array("1", "2", "3", "4", "5", "6", "7", "8", "9", "K", "0");
	if (Rut.length < 3){
		return false;
	}
	PosGuion = Rut.lastIndexOf("-");
	if (PosGuion < 1){
		return false;
	}
	for (i=PosGuion-1; i>=0; i--){
		Caracter = Rut.charAt(i).toUpperCase();
		if (Caracter != "."){
			if (Factor > 7){
				Factor = 2;
			}
			if(parseInt(Caracter) == "NaN"){
				return false;
			}
			else{
				Sum += (parseInt(Caracter) * Factor);
			}
			Factor++;
		}
	}
	PosDV = 11 - (Sum % 11);
	return (arrDV[PosDV-1] == Rut.charAt(PosGuion+1));
}

function isTeclaDigito(EsDecimal){
	if (EsDecimal){
		if (event.keyCode < 48 || event.keyCode > 57)
			if (event.keyCode != 44 && event.keyCode != 46)
				event.returnValue = false;
	}
	else{
		if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;
	}
}

function FormatoFecha(Fecha){
	var strFecha = ReemplazarGuion(Fecha.value)
	var arrFecha = strFecha.split("/");
	var dia = new Number(arrFecha[0]);
	var mes = new Number(arrFecha[1]);
	if (dia < 10){
		arrFecha[0] = "0" + dia;
	}
	if (mes < 10){
		arrFecha[1] = "0" + mes;
	}
	if (arrFecha[2].length == 1){
		arrFecha[2] = "200" + arrFecha[2];
	}
	if (arrFecha[2].length == 2){
		arrFecha[2] = "20" + arrFecha[2];
	}
	Fecha.value = arrFecha.join("/");
}

function ReemplazarGuion(strCadena){
	var arrCadena = strCadena.split("-");
	for (i=0; i<arrCadena.length; i++){
		if (arrCadena[i] == "-"){
			arrCadena[i] = "/";
		}
	}
	return arrCadena.join("/");
}

function AbrirCalendario(Pagina){
	window.open(Pagina, "Calendario", "location=no,menubar=no,resizable=no,scrollbars=no,status=no,toolbar=no,width=240,height=260");
}

function AbrirVentana(Pagina, Height, Width){
	if (Height == null){
		Height = 260;
	}
	if (Width == null){
		Width = 240;
	}
	window.open(Pagina, null, "location=no,menubar=no,resizable=no,scrollbars=auto,status=no,toolbar=no,width=" + Width + ",height=" + Height);
}

function MM_openBrWindow(theURL,winName,features, center){
	window.open(theURL,winName,features);
}


var cont_click=0;

function vld_dts() {
cont_click=cont_click+1;
	rut = document.passw.srut.value;
	clave = document.passw.clave.value;

// [VARM+]
  var tmpstr = "";
  for ( i=0; rut.charAt(i) == '0' ; i++ );
  for (; i < rut.length ; i++ )
     tmpstr = tmpstr + rut.charAt(i);
  rut = tmpstr;
  document.passw.srut.value=rut;
// [VARM-]

if (cont_click==1)
{
	
	if ( rut.length == 0 || clave.length != 1 ) 
	{
	   document.passw.submit();
	  //  alert( "Complete todos los datos, por favor.");
	//cont_click=0;
	    //return false;
	} else {
		if (!(checkFields( rut, clave ))){
			cont_click=0;
			return false;
		}
		else
			return true;
	}
}
else
{
	cont_click = 0;
	return false;
}
}


function checkFields( rut, clave )
{

  var tmpstr = "";
  var SoloRut="";
  var RutNum;
  //window.document.passw.pin.value =   window.document.passw.pinpre.value;
  //for ( i=0; i < rut.length ; i++ )
    //if ( rut.charAt(i) != ' ' && rut.charAt(i) != '.' && rut.charAt(i) != '-' )
      //tmpstr = tmpstr + rut.charAt(i);
  //rut = tmpstr;

  if ( !checkRutField(rut) )
    return false;

  if ( !checkDV( rut ) )
    return false;

  if ( !checkPinField(rut) )
      return false;

  window.document.rut.value = rut;

  //window.document.passw.pinpre.value = "";
  window.document.pin.srut.value="";
  SoloRut=rut.substring(0,rut.length-1);

  RutNum=SoloRut
 document.passw.rut.value = document.passw.rut.value.toUpperCase();
 //document.passemp.rut.value = document.passemp.rut.value.toUpperCase();

  if (RutNum < 50000000) {
        document.passw.submit();
  } else {
	if (RutNum > 99999999){
		alert ("Rut Incorrecto")
		return false
		}

	pp = "prueba?rut=" + document.passw.rut.value +"&pin=" + document.passw.pin.value
//alert("hola empresa [" + document.passemp.action + "]\r" + pp );
return false;
	document.passw.action = "prueba.asp"
	document.passemp.rut.value=document.passw.rut.value;
     document.passemp.pin.value=document.passw.pin.value;
      document.passw.submit();
  }

 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.");
    window.document.pin.srut.focus();
    window.document.srut.select();
    return false;
  }
  return true;
}

function checkDV( crut )

{
  largo = crut.length;
  if ( largo < 2 )
  {
    alert("Debe ingresar el rut completo.");
    window.document.srut.focus();
   
    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.");
    //window.document.srut.focus();
    //window.document.srut.value = "";
    return false;
  }

      return true;
}

function checkRutField(texto)
{

  var tmpstr = "";
  for ( i=0; i < texto.length ; i++ )
    if ( texto.charAt(i) != ' ' && texto.charAt(i) != '.' && texto.charAt(i) != '-' )
      tmpstr = tmpstr + texto.charAt(i);
  texto = tmpstr;
  largo = texto.length;

// [VARM+]
  tmpstr = "";
  for ( i=0; texto.charAt(i) == '0' ; i++ );
  for (; i < texto.length ; i++ )
     tmpstr = tmpstr + texto.charAt(i);
  texto = tmpstr;
  largo = texto.length;
// [VARM-]


  if ( largo < 2 )
  {
    alert("Debe ingresar el rut completo.");
    window.document.passw.srut.focus();
    window.document.passw.srut.select();
    return false;
  }


  for (i=0; i < largo ; i++ )
  {
    if ( texto.charAt(i) !="0" && texto.charAt(i) != "1" && texto.charAt(i) !="2" && texto.charAt(i) != "3" && texto.charAt(i) != "4" && texto.charAt(i) !="5" && texto.charAt(i) != "6" && texto.charAt(i) != "7" && texto.charAt(i) !="8" && texto.charAt(i) != "9" && texto.charAt(i) !="k" && texto.charAt(i) != "K" )
    {
      alert("El valor ingresado no corresponde a un R.U.T valido.");
      window.document.passw.srut.focus();
      window.document.passw.srut.select();
      return false;
    }
  }


  var invertido = "";

  for ( i=(largo-1),j=0; i>=0; i--,j++ )
    invertido = invertido + texto.charAt(i);


  var dtexto = "";

  dtexto = dtexto + invertido.charAt(0);
  dtexto = dtexto + '-';
  cnt = 0;

  for ( i=1,j=2; i<largo; i++,j++ )
  {
    if ( cnt == 3 )
    {
      dtexto = dtexto + '.';
      j++;
      dtexto = dtexto + invertido.charAt(i);
      cnt = 1;
    }
    else
    {
      dtexto = dtexto + invertido.charAt(i);
      cnt++;
    }
  }

  invertido = "";

  for ( i=(dtexto.length-1),j=0; i>=0; i--,j++ )
    invertido = invertido + dtexto.charAt(i);

  window.document.passw.srut.value = invertido;

  if ( checkDV(texto) )
    return true;
  return false;
}
