/**
 * @author sergio.rios
 */
function bloqueo(){
	var xdisp;
	var ydisp;
	if(getNav()==0){
	    xdisp=document.documentElement.clientWidth;
	    ydisp=document.documentElement.clientHeight;
	}else{
	    xdisp=window.innerWidth;
        ydisp=window.innerHeight;
	}
	var cbloq=document.createElement("div");
	cbloq.id="divbloqueo";
	cbloq.style.position="absolute";
	cbloq.style.left=0;
	cbloq.style.top=0;
	cbloq.style.width=xdisp+"px";
	cbloq.style.height=ydisp+"px";
	cbloq.style.backgroundColor="#000000";
	cbloq.style.zIndex=1;
	if(getNav()==0){
		//IE
		cbloq.style.filter="alpha(opacity=60)";
	}else{
		//Mozilla
		cbloq.style.opacity='0.6';
	}
	document.body.appendChild(cbloq);
}
function changePass() {
	bloqueo();
	var capa=document.getElementById("divchangepass");
	capa.style.display="block";
	//centrarCapa(capa);
}
function getNav() {
	var navegador;
	if(navigator.userAgent.indexOf("MSIE")>=0) {
		navegador=0;
	}else{
		navegador=1;
	}
	return navegador;
}
function centrarCapa(capa) {
    //alert($('#'+capa.id).css('width'));

	capa.position="absolute";
    var xcapa=$('#'+capa.id).css('width');
	var ycapa=$('#'+capa.id).css('height');
	
	/*alert(xcapa);
	alert(ycapa);*/
	xcapa=xcapa.substr(0, xcapa.length-2);
	ycapa=ycapa.substr(0, ycapa.length-2);
	
	//alert(xcapa);
	xcapa=xcapa/2;
	ycapa=ycapa/2;

	capa.style.left="50%";
	capa.style.top="50%";

	capa.style.marginLeft=(-parseInt(xcapa))+'px';
	capa.style.marginTop=(-parseInt(ycapa))+'px';
}
function cambiarPass(f, p){
	preloader();
	var params=p.value.split(",");
    if(f.txtuserchange.value!="" && f.txtpassold.value!="" && f.txtpassnew.value!="" && f.txtpassrep.value!=""){
        if(f.txtpassnew.value==f.txtpassrep.value){
			if (validPass(f, params)) {
				if (f.txtpassold.value != f.txtpassnew.value) {
					$.post("recursos/changepass.aspx", {
						user: f.txtuserchange.value,
						passold: f.txtpassold.value,
						passnew: f.txtpassnew.value
					}, function(resp){
						switch (resp) {
							case "1":
								formClean(f);
								clearPreloader();
								alert("Su contraseña ha sido actualizada satisfactoriamente\nDesde ahora puede ingresar con su nueva contraseña");
								closeChange(f);								
								var path=getVar("path");
								if(path!=null)window.location=path;
								break;
							case "2":
								clearPreloader();
								alert("La contraseña no debe ser igual a las 2 anteriores contraseñas utilizadas");
								break;
							case "3":
								clearPreloader();
								alert("Usuario o contraseña incorrecto");
								break;
						}
					});
				}
			}else{
				clearPreloader();
				alert("La contraseña debe tener minimo "+params[0]+" caracteres y contener mayusculas, minusculas, numeros y caracteres (!, $, #, %)");
			}
        }else{
			clearPreloader();
            alert("Las contraseñas nuevas no coincidern !!!");
        }
    }else{
		clearPreloader();
        alert("Debe llenar todos los campos !!!");
    }
}
function closeChange(f){
    formClean(f);
    var bloq=document.getElementById("divbloqueo");
    var formu=document.getElementById("divchangepass");
    formu.style.display="none";
    bloq.parentNode.removeChild(bloq);
}
function formClean(f){
    f.txtuserchange.value="";
    f.txtpassold.value="";
    f.txtpassnew.value="";
    f.txtpassrep.value="";
}
function loguear(f, f2) {
	preloader();
	var user=f.txtuser.value;
	var pass=f.txtpass.value;
	if (user.length != 0 && pass.length != 0) {
		$.post("login.aspx", {user:user, pass:pass}, function(result){
		    var resp=result.split(',');
		    var result=resp[0];
		    var path=resp[1];
		    if(result!=10000){
			    if(result>=0){
				    if (result != 999) {
					    if (result <= 5) {
						    var cp = confirm("Le quedan " + result + " dias para que expire su contraseña. \n¿Desea cambiarla ahora?");
						    if (cp) {
							    document.getElementById(f2.txtuserchange.id).value=user;
				                document.getElementById(f2.txtpassold.id).value=pass;	
							    $('.logedyet').css('display', 'none');						
							    changePass();							
						    }
						    else {
							    //window.location = "dashboard.aspx";							    
						        if(path!=null){
						            window.location=path;
						        }else{
						            alert(path);
						            window.location = path;
						        }
						    }
					    }
					    else {
						    //window.location = "dashboard.aspx";
						    if(path!=null){
						        window.location=path;
						    }else{
						        alert(path)
						        window.location = path;
						    }
					    }
				    }else{
					    clearPreloader();
					    alert("Usuario o contraseña incorrecto");
				    }
			    }else{
				    alert("Su contraseña ha explirado.\nPor favor actualicela");
				    document.getElementById(f2.txtuserchange.id).value=user;
				    document.getElementById(f2.txtpassold.id).value=pass;
				    $('.logedyet').css('display', 'none');
				    changePass();
			    }
			}else{
			    alert("Error en la conexion");
			    clearPreloader();
			}
		});
		
	}else{
		alert("Debes Escribir el usuario y la contraseña");
		clearPreloader();
	}
}
function validPass(f, params) {
	var valor =0;
	var numeros=0;
	var minusculas=0;
	var mayusculas=0;
	var especiales=0;

	var texto=f.txtpassnew.value;
	for(var i=0; i<texto.length; i++){
		valor=texto.charCodeAt(i);
		if (valor>47 && valor < 58) numeros +=1;
		if (valor>64 && valor < 91) minusculas+=1;
		if (valor>96 && valor < 123) mayusculas+=1;
		if ((valor==33) || (valor==35) ||(valor==36)||(valor==37)) especiales+=1;					
	}
	if(texto.length>=params[0] && mayusculas>=params[1] && minusculas>=params[2] && numeros>=params[3] && especiales>=params[4]){
		return true;
	}else{		
		return false;
	}
}
function getVar(nvar){
    $.post("recursos/vars.aspx", {nvar:nvar}, function(result){return result});
}
