

function valchar(objeto)
{
	digito=(objeto.value).substr((objeto.value).length -1,(objeto.value).length)
	var vDigitosNulos = " abcdefghijklnmñopqrstuvwxyzABCDEFGHIJKLNMÑOPQRSTUVWXYZúéíóáÁÉÍÓÚÀÈÌÒÙàèìòù,:.;-_!·$%&/()=?¿çºª0123456789¡#"
	if(parseInt(vDigitosNulos.lastIndexOf(digito),10)==-1){
		objeto.value=(objeto.value).substr(0,(objeto.value).length -1)
	}
}
function validanumero(field){
	// onblur="javascript:validanumero(this)"
	if (field.value==""){return false;}
	var valid = "0123456789."
	var ok = "yes";
	var temp;
	for (var i=0; i<field.value.length; i++) {
	temp = "" + field.value.substring(i, i+1);
	if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") {
	alert("Solo se Aceptan numeros !!!" )
	field.value="";field.focus();field.select();
	   }else{
	   if (field.value=="")field.value=""
	   }
}
function validastring(field){
	if (field.value==""){return false;}
	var valid = "áéíóúÁÉÍÓÚàèìòùÀÈÌÒÙ0123456789abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ¡!¿?=()/\&%$·#@|{}[]*;:.-_ºª^,' "
	var ok = "yes";
	var temp;
	for (var i=0; i<field.value.length; i++) {
	temp = "" + field.value.substring(i, i+1);
	if (valid.indexOf(temp) == "-1") ok = "no";
	}
	if (ok == "no") {
	alert("Entrada de dato no valida! Ha escrito caracteres no validos en esta entrada de datos!");
	field.value="";field.focus();field.select();
	   }else{
	   if (field.value=="")field.value=""
	   }
}

function validaM11(rut,dv,field1,field2){
  var suma=0;
  var mul=2;
  var i=0;
  var arut=Array()
  mensa='RUT NO ES ACEPTADO YA QUE ES CONSIDERADO COMO COMODIN, DEBE INGRESAR DATO CORRECTO';
  arut[0]='11111111';
  arut[1]='22222222';
  arut[2]='33333333';
  arut[3]='44444444';
  arut[4]='55555555';
  arut[5]='66666666';
  arut[6]='77777777';
  arut[7]='88888888';
  arut[8]='99999999';
  arut[9]='00000000';
  if (rut < 100000)
       { alert(mensa);
	     field1.value="";
         field2.value="";		
	     field1.focus();
		 return false;  
	   }
  for (i;i<=9;i++)
      { if (rut == arut[i])
           { alert(mensa);
		   field1.value="";
           field2.value="";		
	       field1.focus();
		   return false;  
		   }
	  }
  
 if (field1.value!="" || field2.value!=""){
  for (i=rut.length-1;i>=0;i--){
    suma=suma+rut.charAt(i) * mul;
    mul= mul==7 ? 2 : mul+1;
  }
  var dvr = ''+(11 - suma % 11);
  if (dvr=='10') dvr = 'K';
  else if (dvr=='11') dvr = '0';
  if (dvr!=dv) 
  {	alert('El Rut no es válido');	
	field1.value="";
	field2.value="";		
	field1.focus();
	return false;}
  else return true;
}}


function ventana(url,alto,ancho)
   {
	var attr = "HEIGHT=" + alto +",WIDTH=" + ancho  + ",resizable=no, scrollbars=yes, titlebar=no,Top=0";
	window.open(url,"_blank",attr);
   }
   
function MM_jumpMenu(selObj)
{  // v 3.0
ventana="window.showModalDialog('"+selObj.options[selObj.selectedIndex].value+"', 'NewWin', 'dialogTop=100px; dialogLeft=100px; dialogWidth=680px;dialogHeight=500px; channelmode=yes;status=no;scrollbars=no;center=yes; help=no; font-family:verdana;font-size:12px')";
//ventana="window.showModalDialog('"+selObj.options[selObj.selectedIndex].value+"', 'NewWin', 'dialogTop=100px; dialogLeft=100px; dialogWidth=600px;dialogHeight=400px; status=off;resizable=no;titlebar=yes;scrollbars=no;center=yes; help=no; font-family:verdana;font-size:12px')";
eval(ventana);
}   

function GeneradorPassword() {

    if (parseInt(navigator.appVersion) <= 3) {
        alert("Sorry this only works in 4.0+ browsers");
        return true;
    }

    var length=6;
    var sPassword = "";
    //length = 6;

    var noPunction = true;
    var randomLength = false;

    if (randomLength) {
        length = Math.random();

        length = parseInt(length * 100);
        length = (length % 7) + 6
    }


    for (i=0; i < length; i++) {

        numI = getRandomNum();
        if (noPunction) { while (checkPunc(numI)) { numI = getRandomNum(); } }

        sPassword = sPassword + String.fromCharCode(numI);
    }

    return  sPassword;
}
function getRandomNum() {

    // between 0 - 1
    var rndNum = Math.random()

    // rndNum from 0 - 1000
    rndNum = parseInt(rndNum * 1000);

    // rndNum from 33 - 127
    rndNum = (rndNum % 94) + 33;

    return rndNum;
}

function checkPunc(num) {

    if ((num >=33) && (num <=47)) { return true; }
    if ((num >=58) && (num <=64)) { return true; }
    if ((num >=91) && (num <=96)) { return true; }
    if ((num >=123) && (num <=126)) { return true; }

    return false;
}   

function diff_fecha(inicial,final)
{  
   //Obtiene dia, mes y año
   var fecha1 = new fmtofecha( inicial )
   var fecha2 = new fmtofecha( final )
   
   //Obtiene objetos Date
   var miFecha1 = new Date( fecha1.anio, fecha1.mes, fecha1.dia ) //sistema
   var miFecha2 = new Date( fecha2.anio, fecha2.mes, fecha2.dia ) //documento
   
   diferencia=parseInt(fecha2.anio+fecha2.mes+fecha2.dia)-parseInt(fecha1.anio+fecha1.mes+fecha1.dia)
   
   //Resta fechas y redondea
   // var diferencia = miFecha2.getTime() - miFecha1.getTime()
  //  var dias = Math.floor(diferencia / (1000 * 60 * 60 * 24))

  // dias = (miFecha2.getTime() - miFecha1.getTime()) / (1000 * 60 * 60 * 24); 
  // diferencia = Math.floor(dias);
   // var segundos = Math.floor(diferencia / 1000)
  //  alert ('La diferencia es de ' + dias + ' dias,\no ' + segundos + ' segundos.')

return(diferencia)
}

function fmtofecha( cadena ) 
{
 //Separador para la introduccion de las fechas
   var separador = "/"

   //Separa por dia, mes y año
   if ( cadena.indexOf( separador ) != -1 ) {
        var posi1 = 0
        var posi2 = cadena.indexOf( separador, posi1 + 1 )
        var posi3 = cadena.indexOf( separador, posi2 + 1 )
		
        this.dia = cadena.substring( posi1, posi2 )
        this.mes = cadena.substring( posi2 + 1, posi3 )
        this.anio = cadena.substring( posi3 + 1, cadena.length )
  } else {
        this.dia = 0
        this.mes = 0
        this.anio = 0   
   }
}