//Para trabajar con las Cookies
//fecha de caducidad de la galleta
var theDate = new Date();
var oneYearLater = new Date( theDate.getTime() + 31536000000 );
var expiryDate = oneYearLater.toGMTString();

function getCookie(name){
	var cname = name + "=";               
	var dc = document.cookie;             
	if (dc.length > 0) {              
		begin = dc.indexOf(cname);       
		if (begin != -1) {           
			begin += cname.length;       
			end = dc.indexOf(";", begin);
			if (end == -1) end = dc.length;
				return unescape(dc.substring(begin, end));
		}	 
	}
	return null;
}

//Fin funciones Cookies
var enProceso = false; // lo usamos para ver si hay un proceso activo
var http = AjaxObject(); // Creamos el objeto XMLHttpRequest
var enProceso2 = false;
var http2 = AjaxObject();
var enProceso3 = false;
var http3 = AjaxObject();
var enProceso4 = false;
var http4 = AjaxObject();

function AjaxObject(){
	var ObjetoXMLHttpRequest; //creo la variable
	try{
		ObjetoXMLHttpRequest = new XMLHttpRequest(); //creación del objeto para ordenadores NO mocosoft
	}catch (e){
		try{
			ObjetoXMLHttpRequest = new ActiveXObject("XSXML2.XMLHTTP"); //creación del objeto para navegadores mocosoft mas actuales
		}catch (e1){
			try{
				ObjetoXMLHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");//creación del objeto para navegadores antiguos de mocosoft
			}catch (e2){
				ObjetoXMLHttpRequest = false; //Si has llegado aquí es que el navegador no acepta AJAX...
			}
		}
	}
	return ObjetoXMLHttpRequest;
}

//hasta aquí variables y objeto común de ajax

function hazConAjax() {
    if (!enProceso && http) {
       var valor = escape(document.getElementById("longurl").value);
       var url = "comprueba.php?cadena=" + valor;
       http.open("GET", url, true);
       http.onreadystatechange = recogeRespuesta;
       enProceso = true;
       http.send(null);
    }
}
function recogeRespuesta() { 
	if (http.readyState != 4){
		document.getElementById("comprueba").innerHTML = "<img src='images/cargando.gif' alt='cargando' />";
	}
	if (http.readyState == 4 && http.status == 200) { 
		if (http.responseText.indexOf('invalid') == -1) {
           	resultado = http.responseText;
			if (resultado == "ok"){
				document.getElementById("longurl").disabled=true;
				document.getElementById("comprueba").innerHTML = "<img src='images/accept.png' alt='enlace v&aacute;lido' />";
				document.getElementById("okko").innerHTML = "<span id='xaleat'><img src='images/cargando.gif' alt='cargando' /></span><br /><br /><span id='xpersonal'><label for='cod'>O personaliza tu enlace:<br />\n http://xurl.es/</label><input type='text' name='xusua' id='xusua' size='10' maxlength='20' /><input type='button' value='enviar' onclick='quieroPersonal();' /></span>";
				quieroCod();
			}else{
				document.getElementById("comprueba").innerHTML = "<input type='button' value='enviar' onclick='hazConAjax();' /> <img src='images/cancel.png' alt='enlace NO v&aacute;lido' /> ";
				document.getElementById("okko").innerHTML = "El enlace no es válido, comprueba que lo has introducido correctamente.";
			}
           	enProceso = false;
        }
       	
    }
}
function quieroCod(){
	if (!enProceso2 && http2) {
		var valor = escape(document.getElementById("longurl").value);
		var url = "damecodigo.php?cadena=" + valor;
		http2.open("GET", url, true);
		http2.onreadystatechange = recogeCodigo;
		enProceso2 = true;
		http2.send(null);
	}
}
function recogeCodigo(){
	if (http2.readyState == 4 && http2.status == 200) { 
		codigo = http2.responseText;
		document.getElementById("xaleat").innerHTML = "Tu enlace XURL es <strong>http://xurl.es/"+codigo+"</strong><input type='hidden' id='xdef' name='xdef' value='"+codigo+"' /><br /><span class='peq'><a href='http://xurl.es/"+codigo+"' onclick='window.open(this.href,\"_blank\");return false;'>comprueba</a> - Enviar a: <a href='http://www.facebook.com/sharer.php?u=http://xurl.es/"+codigo+"' onclick='window.open(this.href,\"_blank\");return false;'><img src='/images/facebook.gif' alt='compartir en Facebook' /></a> <a href='http://twitter.com/home?status=http://xurl.es/"+codigo+"' onclick='window.open(this.href,\"_blank\");return false;'><img src='/images/twitter.gif' alt='compartir en Twitter' /></a> - <a href=\"/\">¿Acortar otra URL?</a></span>";
		//recojo la galleta
		var codigos = getCookie("codigos");
		if (codigos == null){ 
			codigos="";
		}else{
			codigos=codigos+"|";
		}
		//guardo la galleta
		document.cookie = "codigos="+codigos+codigo+";expires="+expiryDate+";";
		//fin de la cookie
		//Actualizo el bloque de cookies
		ultURL();
		enProceso2 = false;
	}
}
function quieroPersonal(){
	if (!enProceso3 && http3) {
		var valor = escape(document.getElementById("xusua").value);
		var valor2 = escape(document.getElementById("xdef").value);
		var url = "updatepersonal.php?cadena=" + valor + "&cadena2=" + valor2;
		http3.open("GET", url, true);
		http3.onreadystatechange = recogePersonal;
		enProceso3 = true;
		http3.send(null);
	}
}
function recogePersonal(){
	if (http3.readyState == 4 && http3.status == 200) { 
		codper = http3.responseText;
		if (codper!="ko"){
			document.getElementById("xaleat").innerHTML = "";
			document.getElementById("xpersonal").innerHTML = "Tu enlace XURL es <strong>http://xurl.es/"+codper+"</strong><br /><span class='peq'><a href='http://xurl.es/"+codper+"' onclick='window.open(this.href,\"_blank\");return false;'>comprueba</a> - Enviar a: <a href='http://www.facebook.com/sharer.php?u=http://xurl.es/"+codper+"' onclick='window.open(this.href,\"_blank\");return false;'><img src='/images/facebook.gif' alt='compartir en Facebook' /></a> <a href='http://twitter.com/home?status=http://xurl.es/"+codper+"' onclick='window.open(this.href,\"_blank\");return false;'><img src='/images/twitter.gif' alt='compartir en Twitter' /></a> - <a href=\"/\">¿Acortar otra URL?</a></span>";
			//recojo la galleta
			var codigoPer = getCookie("codigos");
			var salida = "";
			if (codigoPer != null){ 
				arrPartes = codigoPer.split('|');
				for(var j=0; j < arrPartes.length-1; j++) {
					salida=salida+arrPartes[j]+"|";
				}
			}
			//guardo la galleta
			document.cookie = "codigos="+salida+codper+";expires="+expiryDate+";";
			//fin de la cookie
			//Actualizo el bloque de cookies
			ultURL();
		}else{
			document.getElementById("xpersonal").innerHTML = document.getElementById("xpersonal").innerHTML + "<img src='images/cancel.png' alt='c&oacute;digo NO v&aacute;lido' /><br />El enlace que has elegido no se encuentra disponible, prueba de nuevo.";
		}
		enProceso3 = false;
	}
}
function ultURL(){
	if (!enProceso4 && http4) {
		//recojo la galleta
		var codigos = getCookie("codigos");
		if (codigos != null){ 
			var url = "dameulturl.php?codigos=" + codigos;
			http4.open("GET", url, true);
			http4.onreadystatechange = recogeUltURL;
			enProceso4 = true;
			http4.send(null);
		}
	}
}
function recogeUltURL(){
	if (http.readyState != 4){
		document.getElementById("ultimas").innerHTML = "<img src='images/cargando.gif' alt='cargando' />";
	}
	if (http4.readyState == 4 && http4.status == 200) { 
		codUlt = http4.responseText;
		if (codUlt!="ko"){
			var salida = "";
			arrEnlaces = codUlt.split('|');
			for(var i=0; i< arrEnlaces.length; i++) {
				salida=salida+arrEnlaces[i];
			}
			document.getElementById("ultimas").innerHTML = "<div class='ultimas'><p>Tus URL Cortas</p><ul>" + salida + "</ul></div>";
		}else{
			document.getElementById("ultimas").innerHTML = "";
		}
		enProceso4 = false;
	}
}
function masAjax() {
    if (!enProceso && http) {
       var valor = escape(document.getElementById("shorturl").value);
       var url = "damestats.php?cadena=" + valor;
       http.open("GET", url, true);
       http.onreadystatechange = recogeStats;
       enProceso = true;
       http.send(null);
    }
}
function recogeStats() { 
	if (http.readyState != 4){
		document.getElementById("comprueba").innerHTML = "<img src='/images/cargando.gif' alt='cargando' />";
	}
	if (http.readyState == 4 && http.status == 200) { 
		if (http.responseText.indexOf('invalid') == -1) {
           	salida = http.responseText;
			if (salida != "ko"){
				document.getElementById("shorturl").disabled=true;
				document.getElementById("comprueba").innerHTML = "<img src='/images/accept.png' alt='Hecho!' />";
				document.getElementById("ultimas").innerHTML = "<div class='ultimas'><p>Estadísticas</p>" + salida + "</div>";
			}else{
				document.getElementById("comprueba").innerHTML = "<input type='button' value='enviar' onclick='masAjax();' /> <img src='images/cancel.png' alt='URL NO v&aacute;lida' /> ";
				document.getElementById("ultimas").innerHTML = "El enlace no es válido, comprueba que lo has introducido correctamente. No hemos encontrado datos para el enlace.";
			}
           	enProceso = false;
        }
       	
    }
}