// alias para ID
function ID(id){
    return document.getElementById(id);
}

function anyadirEvento(objeto,evento,funcion){
	try{
		objeto.addEventListener(evento,funcion,false);
		return true;
	}catch(e){
		try{
			objeto.attachEvent("on"+evento,funcion);
			return true;
		}catch(e){
			return false;
		}
	}
}

function redimensionar()
{
	var winW, winH;
	if (self.innerHeight) {	
		winW = self.innerWidth;
		winH = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { 
		winW = document.documentElement.clientWidth;
		winH = document.documentElement.clientHeight;
	} else if (document.body) { 
		winW = document.body.clientWidth;
		winH = document.body.clientHeight;
	}
  if (ID('contenedora')){
    var padre = ID('contenedora').parentNode.id
    if (padre != "" && !(typeof document.body.style.maxHeight != "undefined")){
      ID(padre).style.width = winW + "px";
      ID(padre).style.height = winH + "px";
    }
    if (winW<985){
      ID('contenedora').style.left = "0px";
      ID('contenedora').style.marginLeft = "10px";
      ID('contenedora').style.top = "0px";
      ID('contenedora').style.marginTop = "0px";
    }else{
      ID('contenedora').style.left = "50%";
      ID('contenedora').style.marginLeft = "-487px";
      ID('contenedora').style.top = "0%";
      ID('contenedora').style.marginTop = "0";
    }
  }
}
anyadirEvento(window,"resize",redimensionar);
anyadirEvento(window,"load",redimensionar);

$(document).ready(function(){
  //Todos los inputs al pulsarlos, si tiene el contenido por defecto lo borramos.
  $(':text').click(function(){
    if ($(this).val() == "email" || $(this).val() == "e-mail" ||
        $(this).val() == "nombre" || $(this).val() == "contraseña" ||
        $(this).val() == "password")
        $(this).val("")
  });
  $('.volver').click(function(){
   $(this).attr({ href:"#"});
   window.location.href='javascript:window.history.back();';
   return false;
  });
  $(':text').blur(function(){
    if ($(this).val() == "")
        $(this).val($(this).attr("name"))
  });
  
  $('#cerrar-sesion').click(function(){
    $.get("/php_lib/ajax.php", { accion: "clienteSalir" },
    function(data){
      if (data != "error"){
        window.location.href="/";
        return true;
      }else{
        alert('Problemas en el servidor.\nInténtelo en unos segundos.')
        return false;
      }
      });
  });
  $('#cerrar-sesion a').attr({ href:"#"});
  $("#cerrar-sesion").hover(
    function () {
      $(this).find("img").attr({ src: "/images/botones/candado-cerrado.gif"});
    }, 
    function () {
      $(this).find("img").attr({ src: "/images/botones/candado-abierto.gif"});
    }
  );
})

function bocadilloMostrar(nombre)
{
  //Ocultamos cualquier bocadillo
  $(".error-login,.registrese").css({'display':'none'});
  switch(nombre){
    case "error-login":
      $(".error-login").css({'display':'block'});
      $("#password").keypress(function () {
        if ($('#password').val()=="") bocadillosOcultar();
      });
      break;
    case "validarse-arriba":
      $(".validarse.arriba").css({'display':'block'});
      break;
    case "registrese-arriba":
      $(".registrese.arriba").css({'display':'block'});
      break;
    case "registrese-abajo":
      $(".registrese.abajo").css({'display':'block'});    
      break;
    default:return false;
  }
  return true;
}

function bocadillosOcultar()
{
  //Ocultamos cualquier bocadillo
  $(".error-login,.registrese").css({'display':'none'});
  return true; 
}

function usuarioValidar(linkUtilizado)
{
  if (linkUtilizado == "arriba"){
    //Lo primero es comprobar que ha introducido el email y la contraseña
    if ($('#email-validarse').val()=="" || !emailValidar($('#email-validarse').val())){
      alert("Introduzca su email y compruebe que el formato es correcto.");
      $('#email-validarse').css({border: "1px solid red"}).focus();
      return false;
    }else{$('#email-validarse').css({border: "1px solid #8c8c8c"});}
    
    if ($('#password-validarse').val()=="" || $('#password-validarse').val()=="contraseña" || $('#password-validarse').val()=="password"){
      alert("Introduzca su contraseña.");
      $('#password-validarse').css({border: "1px solid red"}).focus();
      return false;
    }else{$('#password-validarse').css({border: "1px solid #8c8c8c"});}
  
    $.get("/php_lib/ajax.php", { accion: "clienteValidar", email: $('#email-validarse').val(), contrasenya:$('#password-validarse').val() },
    function(data){
      if (data != "error"){//Enviamos el usuario a la página adecuada
        window.location.href="/descargas/";
        return true;
      }else{
        //Pongo los estilos para que el error salga arriba.
        $('.error-login').addClass("arriba");
        $('.error-login').css({'display':'block'});
        $("#password-validarse").keypress(function () {
          if ($('#password-validarse').val()=="") $(".error-login").css({'display':'none'});
        });
        return false;
      }
      });
  }else{
    //Lo primero es comprobar que ha introducido el email y la contraseña
    if ($('#email').val()=="" || !emailValidar($('#email').val())){
      alert("Introduzca su email y compruebe que el formato es correcto.");
      $('#email').css({border: "1px solid red"}).focus();
      return false;
    }else{$('#email').css({border: "1px solid #8c8c8c"});}
    
    if ($('#password').val()=="" || $('#password').val()=="contraseña" || $('#password').val()=="password"){
      alert("Introduzca su contraseña.");
      $('#password').css({border: "1px solid red"}).focus();
      return false;
    }else{$('#password').css({border: "1px solid #8c8c8c"});}
  
    $.get("/php_lib/ajax.php", { accion: "clienteValidar", email: $('#email').val(), contrasenya:$('#password').val() },
    function(data){
      if (data != "error"){//Enviamos el usuario a la página adecuada
        window.location.href="/descargas/";
        return true;
      }else{
        bocadilloMostrar("error-login");
        return false;
      }
      });
  }
}

function usuarioRegistrarse(linkUtilizado)
{
  if (linkUtilizado != "arriba" && linkUtilizado != "abajo")
  return false;
  //Lo primero es comprobar que ha introducido los datos necesarios
  var nombreUsuario = $("#nombre-"+linkUtilizado+"").val();
  if (nombreUsuario=="" || nombreUsuario=="nombre"){
    alert("Introduzca su nombre");
    $("#nombre-"+linkUtilizado+"").css({border: "1px solid red"}).focus();
    return false;
  }else{$("#nombre-"+linkUtilizado+"").css({border: "1px solid #8c8c8c"});}
  
  var emailUsuario = $("#email-"+linkUtilizado+"").val();
  if (emailUsuario=="" || !emailValidar(emailUsuario)){
    alert("Introduzca su email y compruebe que el formato es correcto.");
    $("#email-"+linkUtilizado+"").css({border: "1px solid red"}).focus();
    return false;
  }else{$("#email-"+linkUtilizado+"").css({border: "1px solid #8c8c8c"});}
  
  var contraseña = $("#password-"+linkUtilizado+"").val();
  if (contraseña=="" || contraseña=="contraseña"){
    alert("Introduzca su contraseña");
    $("#password-"+linkUtilizado+"").css({border: "1px solid red"}).focus();
    return false;
  }else{$("#password-"+linkUtilizado+"").css({border: "1px solid #8c8c8c"});}

  $.get("/php_lib/ajax.php", { accion: "clienteRegistrar", nombre: nombreUsuario, email: emailUsuario, contrasenya:contraseña },
  function(data){
    if (data == "existente"){//Enviamos el usuario a la página adecuada
      $('.registrese.'+linkUtilizado).html('<strong><img src="/images/es/registrese.gif" alt="Registrese" /></strong><span><img src="/images/es/botones/cerrar.gif" alt="cerrar" title="cerrar" onclick="bocadillosOcultar()" /></span><p>Usuario existente.<br /><br />La dirección de correo electrónico que ha utilizado ya existe en nuestra base de datos:<br /><br />'+$('#email-'+linkUtilizado).val()+'<br /><br />Póngase en contacto con <a href="mailto:info@cibo.es">nosotros</a> para aclarar cualquier duda.</p>')
      return true;
    }else if (data != "error"){//Enviamos el usuario a la página adecuada
      $('.registrese.'+linkUtilizado).html('<strong><img src="/images/es/registrese.gif" alt="Registrese" /></strong><span><img src="/images/es/botones/cerrar.gif" alt="cerrar" title="cerrar" onclick="bocadillosOcultar()" /></span><p>Usted ha sido registrado.<br /><br />Nuestro personal revisará su solicitud y le responderá a su dirección de correo electrónico:<br /><br />'+$('#email-'+linkUtilizado).val()+'</p>')
      return true;
    }else{
      $('#resultado-'+linkUtilizado).html("Error técnico. Inténtelo de nuevo en unos segundos.")
      return false;
    }
    });
}

function usuarioRecordar(situacion)
{
  switch(situacion){
    case "home":
      var emailUsuario = $("#email").val();
      if (emailUsuario=="" || !emailValidar(emailUsuario)){
        alert("Introduzca su email y compruebe que el formato es correcto.");
        $("#email").css({border: "1px solid red"}).focus();
        return false;
      }else{$("#email").css({border: "1px solid #8c8c8c"});}
      break;
    case "subapartado":
      var emailUsuario = $("#email-validarse").val();
      if (emailUsuario=="" || !emailValidar(emailUsuario)){
        alert("Introduzca su email y compruebe que el formato es correcto.");
        $("#email-validarse").css({border: "1px solid red"}).focus();
        return false;
      }else{$("#email-validarse").css({border: "1px solid #8c8c8c"});}
      break;
  }

  $.get("/php_lib/ajax.php", { accion: "clienteRecordar", email: emailUsuario },
  function(data){
    if (data != "error"){
      $('.error-login').html('<img class="alert" src="/images/alert.gif" alt="Atención" /> <strong><img src="/images/es/contrasena-incorrecta.gif" alt="Contraseña incorrecta" /></strong><p>Su contraseña ha sido enviada.</p>')
      return true;
    }else{
      $('.error-login').html('<img class="alert" src="/images/alert.gif" alt="Atención" /> <strong><img src="/images/es/contrasena-incorrecta.gif" alt="Contraseña incorrecta" /></strong><p>Error técnico. Inténtelo de nuevo en unos minutos.</p>')
      return false;
    }
    });
}

function emailValidar(email)
{
  if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)){
   return (true)
  }else return (false)
}