// Descargando VEMAPS para evitar Memory Leaks
$(window).unload( function () { if(map!=null) map.Dispose();} );
var cargandoGenerico='<p style="color:#777777;font-weight:bold;text-align:center;"><img src="/img/loading.gif" alt="Cargando, por favor, espera ..." /><br /><br />Cargando, por favor, espera ...</p>';
// Iniciando JS
$(document).ready(function() {


$("#localMasBt a").click(masLocales);
$('#menuLocal ul li a').click(function(){
  var ant=$(this).parent().parent().parent().attr("id");
  $("#"+ant+" ul li").removeClass("menuTab");
  $("#"+ant+" ul li").addClass("menuTabInac");
  $(this).parent().addClass("menuTab");
  
  var id=$(this).attr('href')
  $("#"+ant+" .menuCont").hide();
  $(id).show();
  return false;
  
});


	  $('div.menuBoton').click(function() {
      if($(this).next().is(':visible')){
		    return false;
      } else {
		    $('div.menuContenido').slideUp('normal');
		    $(this).next().slideDown('normal');
		  }
		  
	  });
	  

          $('#sliderEstablecimiento').slider(
              {
                steps: 10,
                slide : function( e, ui){
		              $('#valor1').val($('#sliderEstablecimiento').slider('value')/10);
		              textoSalida('establecimientoSalida',$('#sliderEstablecimiento').slider('value')/10)
                  $("#establecimientoSalida").removeClass('errorForm');		              
		            }
		          }
            );

            $('#sliderServicio').slider(
              {
                steps: 10,
                slide : function( e, ui){
		              $('#valor2').val($('#sliderServicio').slider('value')/10);
		              textoSalida('servicioSalida',$('#sliderServicio').slider('value')/10)
                  $("#servicioSalida").removeClass('errorForm');		              
		            }
		          }
            );            
          
          $('#sliderOtros').slider(
              {
                steps: 10,
                slide : function( e, ui){
		              $('#valor3').val($('#sliderOtros').slider('value')/10);
		              textoSalida('otrosSalida',$('#sliderOtros').slider('value')/10)
                  $("#otrosSalida").removeClass('errorForm');		              
		            }
		          }
            );    
          $('#megusta').hover(
              function() {
	               $('#megusta').attr('src','/img/btn_megusta.gif');
              }, function() {
                $('#megusta').attr('src','/img/btn_megusta_bn.gif');
              } 
          );

          $('#megusta_activo').hover(
              function() {
	               $('#megusta_activo').attr('src','/img/btn_megusta_b.gif');
              }, function() {
                $('#megusta_activo').attr('src','/img/btn_megusta_a.gif');
              } 
          );

          $('#intereses1 a').click(function() {
                pageTracker._trackEvent("AJAX", "Ficha", "Parkings");
                $('#intereses1').css('backgroundColor', '#eaf2f9');
                $('#intereses2').css('backgroundColor', '#fff');
                $('#cajeros').hide();
                $('#parkings').show();
                var enlace=$('#masInteres a').attr("href");
                enlace=enlace.replace("Cajeros_Automaticos","Aparcamientos");
                $('#masInteres a').attr("href",enlace);
         });

         $('#intereses2 a').click(function() {
                pageTracker._trackEvent("AJAX", "Ficha", "Cajeros");
                $('#intereses2').css('backgroundColor', '#eaf2f9');
                $('#intereses1').css('backgroundColor', '#fff');
                $('#cajeros').show();
                $('#parkings').hide();
                var enlace=$('#masInteres a').attr("href");
                enlace=enlace.replace("Aparcamientos","Cajeros_Automaticos");
                $('#masInteres a').attr("href",enlace);
         });
         $('#btnAnadirTags').click(function() {
              //pageTracker._trackEvent("AJAX", "Ficha", "Añadir Tags");
              $('#btnAnadirTags').fadeOut(300,function() {
                $("#anadirTags").fadeIn();
              $("#txtTags").focus();
              });
              
         });
         
         
            
      var retardo;
            
            
      $("#txtTags").bind('keyup',function() {
        var tags;
        tags = $("#txtTags").val();
        tags = tags.split(",");
        
        
        if(retardo!=0) {
              clearTimeout(retardo);
        } 
            
        retardo = setTimeout(function() { 
                retardo = 0; 
                
        if(tags[tags.length-1].length > 3) {
          $.post("/site/_ajax/ajax-tags.php",{"do":"autocompletar",tag:tags[tags.length-1] }, 
              function(xml) {
                $("#sugerencias").html("");
                $("#txtTags").addClass("loading");
                
                $(xml).find('tag').each(function(){
                  var tagID = $(this).find('tagID').text();
                  var tagRAW = $(this).find('tagRAW').text();
                 $("#sugerencias").append("<div class='sugerencias'><a href='javascript:anadirTag("+tagID+")' class='sugerencias'>"+tagRAW+"</a></div>");
                 
                 //$("#txtTags").keydown(function(event) {
                 // if(event.keyCode==9) {
                //anadirTag(tagID);
                 // }
                 //}); 
                });
                
                $("#txtTags").removeClass("loading");
                
                if($(xml).find('tagID').text() != "") {
                  $("#sugerencias").slideDown();
                } else {
                  $("#sugerencias").fadeOut();
                }
          });
       } else {
          $("#sugerencias").hide();
          $("#sugerencias").html("");
        }
       }, 500); //Fin del SetTimeOut
      });
        
         
});

function cargaJS(quecargo){
  var script = document.createElement("script");
  script.setAttribute("src", quecargo);
  script.setAttribute("type", "text/javascript");
  document.documentElement.firstChild.appendChild(script);
}

function cargaMapa(){
  if(!(window.attachEvent)) cargaJS("http://dev.virtualearth.net/mapcontrol/v6.2/js/atlascompat.js");
  cargaJS("http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2&onScriptLoad=mapa");
}

function reseteaErrores(){
  $("#error5").removeClass('errorForm');
  $("#volveriasSalida").removeClass('errorForm');
  $("#otrosSalida").removeClass('errorForm');
  $("#servicioSalida").removeClass('errorForm');
  $("#establecimientoSalida").removeClass('errorForm');
  $("#tituloSalida").removeClass('errorForm');
}

function enviaOpinion(){
  var error=0;
  var botoneraHTML=$("#botonera").html();
  var cargando='<table border="0" cellspacing="0" cellpadding="0"><tr><td style="padding-right:10px;"><img src="/img/loading.gif" width="16" height="16" alt="cargando..." /></td><td style="padding-right:20px;"><b>Enviando ...</b></td></tr></table>';
  reseteaErrores();
  if($("#textoopinion").val().length<5){
      error=1;
      $("#error5").addClass('errorForm');
  }
  if($("#comentarioTitulo").val().length<2){
      error=1;
      $("#tituloSalida").addClass('errorForm');
  }
  if(!$("input[@name='volverias']:checked").val()){
      error=1;
      $("#volveriasSalida").addClass('errorForm');
  }
  if(esNumero($("#valor3").val(),0,10)==1) {
    error=1;
    $("#otrosSalida").addClass('errorForm');
  }
  if(esNumero($("#valor2").val(),0,10)==1) {
    error=1;
    $("#servicioSalida").addClass('errorForm');
  }
  if(esNumero($("#valor1").val(),0,10)==1) {
    error=1;
    $("#establecimientoSalida").addClass('errorForm');
  }

  if(!error){
    if(($("#valor1").val()==0 || $("#valor2").val()==0 || $("#valor3").val()==0)&&($("#confirma").val()!=1)) {
      // Han puntuado Cero
      $("#pregunta").slideDown("fast");
    } else {
      // Todo está bien ...
      $("#botonera").html(cargando);
      var texto=$("#textoopinion").val();
      texto=texto.replace(/€/g,"&euro;");
      $.post("/site/ajax-backend.php",{ 
        id: $("#tagID").val(), 
        valor1: $("#valor1").val(),
        valor2: $("#valor2").val(),
        valor3: $("#valor3").val(),
        volverias: $("input[@name='volverias']:checked").val(),
        titulo: $("#comentarioTitulo").val(),
        textoopinion: texto}
        ,function(xml) {
          $("#tagsGuia").hide();
          $("#tagsGuia").html("");  
          if($("status",xml).text() == "1") {
            pageTracker._trackEvent("AJAX", "Ficha", "EnviaOpinion","Error");
            alert("Vaya! Se ha producido un error, inténtalo más tarde");
          } 
          else{
            opina();
            $("#botonera").html(botoneraHTML);
            window.location.href="#opiniones";
            $("#panelOpiniones").html('<p align="center"><img src="/img/loading.gif" alt="Cargando" /></p>');
            actualizaComentarios($("#tagID").val(),1);
            reseteaFormulario();
          }
      });
    }
  }
}

function reseteaFormulario(){
    document.getElementById("tuopinion").reset();
    $('#sliderServicio').slider("moveTo",0);
    $('#sliderEstablecimiento').slider("moveTo",0);
    $('#sliderOtros').slider("moveTo",0);
    $("#establecimientoSalida").html('');
    $("#otrosSalida").html('');
    $("#servicioSalida").html('');
    $("#tituloSalida").html('');
}

function esNumero(valor,min,max){
  if(IsNumeric(valor)) {
    if(valor<min || valor>max) return 1;
    else return 0;
  }else return 1;
}

function IsNumeric(sText)
{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
}

function confirmacion(){
   $("#confirma").val('1');
   $("#pregunta").slideUp("fast");
   enviaOpinion();
}

function cambiaMapa(){  
   pageTracker._trackEvent("AJAX", "Ficha", "Modo Mapa");

   var modo=map.GetMapStyle();
   if (modo==VEMapStyle.Road) {
      map.SetMapStyle(VEMapStyle.Birdseye);
      $("#txt_cambiaMapa a").text("Modo Mapa");
   }else{
      map.SetMapStyle(VEMapStyle.Road);
      $("#txt_cambiaMapa a").text("Vista Aerea");
   }
}        

function ZoomIn(){
   map.ZoomIn();
}

function ZoomOut(){
   map.ZoomOut();
}
        
function Rota(donde){
  if(donde=="izqda")  { 
     rotacion=rotacion+1;
  } else {
     rotacion=rotacion-1;
  }
  if(rotacion>4) rotacion=1;
  if(rotacion<=0) rotacion=4;
  switch (rotacion) {
     case 1: map.SetBirdseyeOrientation(VEOrientation.East);
             break;
     case 2: map.SetBirdseyeOrientation(VEOrientation.South);
             break;
     case 3: map.SetBirdseyeOrientation(VEOrientation.West);
             break;
     case 4: map.SetBirdseyeOrientation(VEOrientation.North);
             break;
   }
}

function textoSalida(capa,valor){
      capa='#'+capa;
              var texto;
              if(valor<=3) texto='Chungo ...';
              else if(valor>3 && valor<=6) texto ='No esta mal ...';
              else if(valor>6 && valor<=8) texto ='Bien ...';
              else if(valor>8 && valor<=9) texto='Chachi!';
              else texto='Excelente!';
              $(capa).html(texto);
            
            }


function opina(){
   pageTracker._trackEvent("AJAX", "Ficha", "Botón Envia Opinión");
   $('#datos').toggle();
   $('#formOpinion').toggle();
   $('#enviaComentario').toggle();
   $('#enviaComentarioIcono').toggle();
}
    
function valora(val1,val2){
   $.post("/site/backend.php",{ 
   que: "puntua", 
   id: val1, 
   valor: val2 
   }, function(xml) { 
      if($("error",xml).text()) {
        alert("Ops! Parece que algo no ha ido bien, inténtalo más tarde :(")
        return;
      } 
      var valor=$("media",xml).text();
      var capa2="#valoresPuntuacion"+val1;
      var capa="#botonesPuntuacion"+val1;
      var texto="";
      if(valor>=0) texto=' Valoraci&oacute;n: <strong><span style="color:green;">+'+valor+'</span></strong>';
      else texto=' Valoraci&oacute;n: <strong><span style="color:red;">'+valor+'</span></strong>';
      $(capa).hide();
      $(capa2).hide();
      $(capa).html('<span style="color:#707070;"><strong>¡Gracias!</strong></span>');
      $(capa).fadeIn();
      $(capa2).html(texto);
      $(capa2).fadeIn();
   }); 
}
    
    function actualizaFavoritos(localID){
      $("#bloqueFavoritos").html(cargandoGenerico);
      $.post("/site/ajax-avatares.php", { localID: localID }, 
            function(data){
              $("#bloqueFavoritos").html(data);
             }
        );
    }  
    
    function actualizaComentarios(localID,orden){
      pageTracker._trackEvent("AJAX", "Ficha", "actualizaComentarios");
      $("#panelOpiniones").html(cargandoGenerico);
      $.post("/site/ajax-comentarios.php", { localID: localID,orden: orden }, 
            function(data){
              $("#panelOpiniones").html(data);
             }
        );
    
    }
    
function anadirFavorito(localID) {
   $.post("/site/ajax-favoritos.php", { "do": "anadirFavorito",localID: localID }, 
     function(xml){
       if($("nombre",xml).text() == localID) {            
          $("#noEsFavorito").hide();
          $("#esFavorito").fadeIn();
          $("#localesFavoritos").fadeOut("fast");
          $("#localesFavoritos").html(parseInt($("#localesFavoritos").html()) + 1);
          $("#localesFavoritos").fadeIn();
          actualizaFavoritos(localID);
       } 
     }
   );
}
    
function borrarFavorito(localID) {
   $.post("/site/ajax-favoritos.php", { "do": "borrarFavorito",localID: localID }, 
     function(xml){
       if($("nombre",xml).text() == localID) {
              $("#esFavorito").hide();
              $("#noEsFavorito").fadeIn();
              $("#localesFavoritos").fadeOut("fast");
              $("#localesFavoritos").html(parseInt($("#localesFavoritos").html()) - 1);
              $("#localesFavoritos").fadeIn();
              actualizaFavoritos(localID);
       }
      }
    );
}

function botonOpinion() {
   window.location.href="#titulo";
   opina();
}

function edita(val){
  var contenido=$("#editable"+val).html();
  var titular=$("#titular"+val).html();

  contenido=contenido.replace(/\n/g,"");
  contenido=contenido.replace(/<BR>/g,"\n");
  contenido=contenido.replace(/<br>/g,"\n");
  var nuevo='<textarea name="comentario'+val+'" id="comentario'+val+'" rows="10" cols="65">'+contenido+'</textarea>';
  var nuevo2='<input name="comentarioTitulo'+val+'" id="comentarioTitulo'+val+'" value="'+titular+'" size="35" />';
  $("#editable"+val).html(nuevo);
  $("#titular"+val).html(nuevo2);
  var nuevaBotonera='<a href="javascript:void(null)" onclick="actualizaComentarios('+CLID+',1)"><img src="/img/btn_cancelar.gif"  alt="Cancelar" width="74" height="22" border="0" /></a> &nbsp;&nbsp; <a href="javascript:void(null)" onclick="modifica('+val+')"><img src="/img/btn_enviar.gif" alt="Modificar opini&oacute;n" width="74" height="22" border="0" /></a> ';
  $(".botoneraEdit"+val).html(nuevaBotonera);
}

function modifica(val){
  var comentario=$("#comentario"+val).val();
  var titulo=$("#comentarioTitulo"+val).val();
  if(comentario.length<2 || titulo.length<2) alert("Tanto el título como el comentario son obligatorios.")
  else {
  var nuevaBotonera='<img src="/img/loading.gif" alt="Cargando ..." />';
  $(".botoneraEdit"+val).html(nuevaBotonera);
  var texto=comentario.replace(/€/g,"&euro;");
      $.post("/site/ajax-modifica.php",{ 
        id: val, 
        titulo: titulo,
        textoopinion: texto}
        ,function(xml) {
          if($("status",xml).text() == "1") alert("Vaya! Se ha producido un error, inténtalo más tarde"); 
          else{
            actualizaComentarios(CLID,1);
          }
      });
  }
}

function anadirTagsUsuario(localID) {
    
  var tags = $("#txtTags").val();

  if(tags.length > 2) {
    $("div.tags").html(cargandoGenerico);
    $("#anadirTags").fadeOut();
  
    $.post("/site/_ajax/ajax-tagsusuario.php", { "do":"insertar",tags: tags,localID: localID},
      function(html) {
        $("div.tags").fadeOut();
        $("div.tags").html(html);
        $("div.tags").fadeIn();
        $("#btnAnadirTags").fadeIn();
    });
  }
  
}

function anadirTag(tagID) {
      var tags;
      tags = $("#txtTags").val();
      tags = tags.split(",");
      
      var tags2;
      tags2 = "";
      
      $.post("/site/_ajax/ajax-tags.php",{ tagID:tagID },
      
          function(xml) {
            $(xml).find('tag').each(function() {
              tagRAW = $(this).find('tagRAW').text();
                            
              if(tags.length>1) {
                for(i=0;i<=tags.length-2;i++){
                  tags2 = tags2 + tags[i] + ",";
                }
                  tags2 = tags2 + tagRAW;
                  $("#txtTags").val(tags2);
                  $("#txtTags").focus();
              } else {
                $("#txtTags").val(tagRAW);
                $("#txtTags").focus();
              }                           
            
             $("#sugerencias").fadeOut();
             
            });    
      });         
    }    

function masLocales(){
  $("#localMasBt").fadeOut(function (){
    $("#localMas").show();
  });
  return false;
}