function rut(r) {
	r=r.replace(/-/g,"");
	sub_rut=substr(r,0,strlen(r)-1);
	sub_dv=substr(r,-1);
	x=2;
	s=0;
	if (strlen(sub_rut)==8) {
		var pes = new Array(8);
		for (i=0;i<8;i++) { pes[i] = sub_rut.charAt(i); }
	}
	else if (strlen(sub_rut)==7) {
		var pes = new Array(7);
		for (i=0;i<7;i++) { pes[i] = sub_rut.charAt(i); }
	}
	else { return false; }
	for ( i=strlen(sub_rut)-1;i>=0;i-- ) {
		if ( x >7 )	{ x=2; }
		s = parseInt(s) + (parseInt(pes[i])*parseInt(x));		
		x++;
	}

	if (sub_dv=="k") { sub_dv='K'; }
	var dif=parseInt(s%11);

	var new_dv=11-dif;
	if ( parseInt(new_dv)==10 ) { new_dv='K'; }
	if ( parseInt(new_dv)==11 ) { new_dv='0'; }

	if ( parseInt(new_dv)==parseInt(sub_dv) || new_dv==sub_dv ) { return true; }
	else { return false; }
}
function strtoupper( str ) {    
return (str+'').toUpperCase(); 
}
function substr( f_string, f_start, f_length ) {
    f_string += '';
    if(f_start < 0) {
        f_start += f_string.length;
    }
    if(f_length == undefined) {
        f_length = f_string.length;
    } else if(f_length < 0){
        f_length += f_string.length;
    } else {
        f_length += f_start;
    }
    if(f_length < f_start) {
        f_length = f_start;
    }
    return f_string.substring(f_start, f_length);
}

function strlen (string) {
    var str = string+'';
    var i = 0, chr = '', lgth = 0;
 
    var getWholeChar = function (str, i) {
        var code = str.charCodeAt(i);
        var next = '', prev = '';
        if (0xD800 <= code && code <= 0xDBFF) { 
            if (str.length <= (i+1))  {
                throw 'High surrogate without following low surrogate';
            }
            next = str.charCodeAt(i+1);
            if (0xDC00 > next || next > 0xDFFF) {
                throw 'High surrogate without following low surrogate';
            }
            return str[i]+str[i+1];
        } else if (0xDC00 <= code && code <= 0xDFFF) {
            if (i === 0) {
                throw 'Low surrogate without preceding high surrogate';
            }
            prev = str.charCodeAt(i-1);
            if (0xD800 > prev || prev > 0xDBFF) { 
                throw 'Low surrogate without preceding high surrogate';
            }
            return false; 
        }
        return str[i];
    };
 
    for (i=0, lgth=0; i < str.length; i++) {
        if ((chr = getWholeChar(str, i)) === false) {
            continue;
        } 
        lgth++;
    }
    return lgth;
}

function e(obj) { return document.getElementById(obj); }
function soloMuestra(id) {	
	e('submenu'+parseInt(id)).style.display='';
	if (parseInt(id)!=1) { e('submenu1').style.display='none'; }
	if (parseInt(id)!=2) { e('submenu2').style.display='none'; }
	if (parseInt(id)!=3) { e('submenu3').style.display='none'; }
	if (parseInt(id)!=4) { e('submenu4').style.display='none'; }
	if (parseInt(id)!=5) { e('submenu5').style.display='none'; }
}
function k1() {
	timer1=setTimeout("e('submenu1').style.display='none';",100);	
}
function k2() {
	timer2=setTimeout("e('submenu2').style.display='none';",100);	
}
function k3() {
	timer3=setTimeout("e('submenu3').style.display='none';",100);	
}
function k4() {
	timer4=setTimeout("e('submenu4').style.display='none';",100);	
}
function k5() {
	timer5=setTimeout("e('submenu5').style.display='none';",100);	
}

function nuevoAjax(){
    var xmlhttp=false;
     try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
     catch (e) {
         try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");    }
         catch (E) { xmlhttp = false; }
     }
     if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); }
     return xmlhttp;
}

function cargarurl(file,capan,postdata) {
    ajax = nuevoAjax();
	var rnd=Math.random();
    accionado = function () {
		var capa = document.getElementById(capan);
		if (ajax.readyState == 1) {
			capa.innerHTML = '<center><img src="images/load.gif" /><br /><span style="color: black; font-weight: bold; font-size: 12px;">Cargando...</span></center>';
		}
		else if ((ajax.readyState == 4) && (ajax.status == 200)) {
		if (postdata) { pageTracker._trackPageview(file+'&'+postdata); }
		else { pageTracker._trackPageview(file); }
		var g=ajax.responseText;
		var g=g.split('[JS]');
		if (g.length>0) {
		capa.innerHTML = g[0]; 
		eval(g[1]);
		}
		else { capa.innerHTML = ajax.responseText; }
		}
	}
   ajax.onreadystatechange = accionado;
   ajax.open("POST", file+'?random='+rnd,true);
   ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   if (!postdata) { postdata=null; }
   ajax.send(postdata); 
}


function soloN(evt){	
var nav4 = window.Event ? true : false;
var key = nav4 ? evt.which : evt.keyCode;	
return (key <= 13 || (key >= 48 && key <= 57));
}
function enter(evt) {
var nav4 = window.Event ? true : false;
var key = nav4 ? evt.which : evt.keyCode;	
if (key==13) { return true;  }
}

function checkCrearCuenta(capa) {
	var d1=e('nombre').value;	
	var d2=e('email').value;
	var d3=e('setpass1').value;
	var d4=e('setpass2').value;
	var d5=e('rut_reg').value;
	var d6=e('dv').value;
	var rutstr=parseInt(d5)+"-"+d6;

	if (d1=="" || d2=="") {
		alert('Nombre y Email son campos obligatorios');
	}
  	else if (d2.indexOf('@', 0) == -1 || d2.indexOf('.', 0) == -1) { 
  		alert("Email invalido"); 
	}
	else if (d3!=d4) {
		alert('La clave no coincide en la repeticion!');
	}
	else if (d5=="" || d6=="") {
		alert('El RUT debe constar de un numero y digito verificador');
	}
	else if (!rut(rutstr)) {
		alert('El RUT ingresado no es valido');
	}
	else {
		cargarurl('../registro.php',capa,'nombre='+d1+'&rut='+d5+'&dv='+d6+'&email='+d2+'&pass='+d3+'&regCatalogo=true');
	}
}
