/*
Librería de validación
Versión: 2.0
Autor: GEEKBOX
URL: http://www.geekbox.cl
*/

function validacionSimple(id,min_digitos){
	var ok=1;
	casilla=document.getElementById(id);
	
	if(min_digitos!=""){
		if(casilla.value.length<min_digitos) { ok=0; }
	}
	else{
		if(casilla.value.length<1) { ok=0; }
	}
	
	return ok;
}

function validacionAlfabetica(id,min_digitos){
	var ok=1;
	var patron=/[^a-zA-Z \-'áéíóúÁÉÍÓÚñÑ]/;
	casilla=document.getElementById(id);
	txt=casilla.value;
	
	if(min_digitos!=""){
		if(casilla.value.length<min_digitos) { ok=0; }
	}
	if(casilla.value.length<1) { ok=0; }
	if(patron.test(txt)) { ok=0; }
	return ok;
}

function validacionTelefonica(id,min_digitos){
	var ok=1;
	var patron=/[^0-9 \-()]/;
	casilla=document.getElementById(id);
	txt=casilla.value;
	
	if(min_digitos!=""){
		if(casilla.value.length<min_digitos) { ok=0; }
	}
	if(casilla.value.length<1) { ok=0; }
	if(patron.test(txt)) { ok=0; }
	return ok;
}

function validarMail(id){
	casilla=document.getElementById(id);
	var ok=1;
	var es_email=/^(.+\@.+\..+)$/;
	if(!es_email.test(casilla.value)) { ok=0; }
	
	return ok;
}

function validarCheckbox(id){
	var ok=1;
	casilla=document.getElementById(id);
	
	if(casilla.checked==false){ ok=0; }

	return ok;
}

function validarRutCompleto(rut){
	var ok=0;
	var rut=document.getElementById(rut).value;
	if(rut.substr(rut.length-1,1)!="K" && rut.substr(rut.length-1,1)!="k"){
		var dv=rut.substr(rut.length-1,1);
		rut=rut.substr(0,rut.length-1);
	}
	else{ dv="K"; }
	rut=rut.replace(/\D/g,"");

	var largo=rut.length;
	var suma=0;
	var mult=2;
	largo--;
	
	while(largo>=0) {
		suma=suma+(rut.charAt(largo)*mult);
		if(mult>6) { mult=2; }
		else { mult++; }
		largo--;
	}

	var resto=suma%11;
	var digito=11-resto;
	
	if(digito==10) { digito="K"; }
	if(digito==11) { digito=0; }
	
	if(!rut || !dv) { ok=0; }
	else if(digito!=dv) { ok=0; }
	else { ok=1; }
	
	return ok;
}

function completarCombo(id,desde,hasta){
	casilla=document.getElementById(id);
	val=casilla.selectedIndex;
	casilla.options.length=0;
	for (i=desde;i<=hasta;i++){
		if(i<10){ numero="0"+i; }
		else{ numero=i; }
		var opcion = new Option(numero,i);
		casilla.options[casilla.options.length] = opcion;	
	}
	if(val>0 && val<i){ casilla.selectedIndex=val; }
	else{ casilla.selectedIndex=0; }
}

function maxLength(e,obj,num) {
	k = (document.all) ? e.keyCode : e.which;
	if (k==8 || k==0){ return true; }
	else{ return obj.value.length<num; }
}

function limitarUsername(e) {
    k = (document.all) ? e.keyCode : e.which;
    if (k==8 || k==0) return true;
    patron = /\w/;
    n = String.fromCharCode(k);
    return patron.test(n);
}