
window.addEventListener('DOMContentLoaded', function() {
	'use strict';

	var urlCatRec=serverCategorias();
	var valueq="";
	var latitud="0";
	var longitud="0";
	var banderaInternet=false;
	var banderaGPS=false;
	localStorage["lat"]="";
	localStorage["long"]="";
	/*localStorage["lat"]="19.298503";
	localStorage["long"]="-99.182657";*/
	latitud=localStorage["lat"];
	longitud=localStorage["long"];
	localStorage['existlistreseult'] = 'false';
	localStorage['existCanalResult'] = 'false';
	/*Variables de navegacion categorias cerca de ti*/

	
	/*Variables de navegacion*/
	var msnbuscando=document.getElementById('msnbuscando');
	var resultCat=document.getElementById('resultCat');
	var requestCat = null;

	var styleimage=document.getElementById('styleimage');
	var listCatRec=document.getElementById('listCatRec');	
	var requestListCatRec = null;

	var contListNegRec=document.getElementById('contListNegRec');
	var requestListNegRec=null;

	var searchInput = document.getElementById('term');	

	var divmenu = document.getElementById('menucss');

	/*Funcion para mostrar menu principal*/
	var frmbuttonmenu = document.querySelector('form[name="buttonmenu"]');
	msnbuscando.textContent="Buscando...";

	 frmbuttonmenu.addEventListener('submit', function(e) 
	 {
	     e.preventDefault();
	     muestraMenu();
  	 }, false);

	  function muestraMenu() { 	
		if (divmenu.style.display == "block") {
			divmenu.style.display = "none";
		} else {
			divmenu.style.display = "block";
		}
	 }
	/*Fin de Funcion para mostrar menu principal*/

	/*Form para invocar canales*/
	
	var nameviajes = document.querySelector('a[name="nameviajes"]');	
	 nameviajes.addEventListener('click', function(e) 
	 {
	     e.preventDefault();
	     muestraMenu();
	     if(banderaInternet==true)
	     {
	     document.location = this.href+'?canal=viajes';  
	     document.location.href = this.href+'?canal=viajes';
	     }
	 	 else
	 	 {
	 	 	alert("no se cuenta con conexión a internet. Verifique la configuración de red de su dispositivo.");
	 	 }
  	 }, false);

	var namebelleza = document.querySelector('a[name="namebelleza"]');	
	namebelleza.addEventListener('click', function(e) 
	 {
	     e.preventDefault();
	     muestraMenu();
	     if(banderaInternet==true)
	     {
	     document.location = this.href+'?canal=belleza';  
	     document.location.href = this.href+'?canal=belleza';
	     }
	 	 else
	 	 {
	 	 	alert("no se cuenta con conexión a internet. Verifique la configuración de red de su dispositivo.");
	 	 }
  	 }, false);

	var namesalud = document.querySelector('a[name="namesalud"]');	
	namesalud.addEventListener('click', function(e) 
	 {
	     e.preventDefault();
	     muestraMenu();
	     if(banderaInternet==true)
	     {
	     document.location = this.href+'?canal=salud';  
	     document.location.href = this.href+'?canal=salud';
	     }
	 	 else
	 	 {
	 	 	alert("no se cuenta con conexión a internet. Verifique la configuración de red de su dispositivo.");
	 	 }
  	 }, false);

	var namequehacer = document.querySelector('a[name="namequehacer"]');	
	namequehacer.addEventListener('click', function(e) 
	 {
	     e.preventDefault();
	     muestraMenu();
	     if(banderaInternet==true)
	     {
	      document.location = this.href+'?canal=que hacer';  
	      document.location.href = this.href+'?canal=que hacer';
	 	 }
	 	 else
	 	 {
	 	 	alert("no se cuenta con conexión a internet. Verifique la configuración de red de su dispositivo.");
	 	 }
	     
  	 }, false);

	/*Fin Form para invocar canales*/

	

	 

	var search=document.querySelector('form[name="frmBuscar"]');

	search.addEventListener('submit', function(e) 
	 {
	     e.preventDefault();
	     if(banderaInternet==true)
	     {
	     GoSearch();
	 	 }
	 	 else
	 	 {
	 	 	alert("no se cuenta con conexión a internet. Verifique la configuración de red de su dispositivo.");
	 	 }
  	 }, false);

	function GoSearch()
	{			
		document.location = 'listResultSearch.html?q='+searchInput.value;  
	    document.location.href = 'listResultSearch.html?q='+searchInput.value;
	    searchInput.value="";
	}

	
 	
	/*COMPRUEBA SI HAY INTERNET*/
 	var request = new window.XMLHttpRequest({mozSystem: true});
    request.open('HEAD', serverCategorias(), true);
    request.timeout = 5750;
    // Si la respuesta es correcta, tenemos internet!
    request.addEventListener('load', function(event) {  
       banderaInternet=true;       
       geoloc(success, fail);
    });
    request.send(null);

    var offlineAlert = function(event) {
    	msnbuscando.textContent="no se cuenta con conexión a internet. Verifique la configuración de red de su dispositivo.";
    	msnbuscando.hidden=false;
    	banderaInternet=false;
       //alert("no se cuenta con conexión a internet. Verifique la configuración de red de su dispositivo.");
    }

    request.addEventListener('error', offlineAlert);
    request.addEventListener('timeout', offlineAlert);
	/*FIN DE COMPROVACION DE INTERNET*/


	//navigator.mozL10n.once(llamaListCatRect); 
   	 //geoloc(success, fail);





function llamaListCatRect()
{
	if(requestListCatRec && requestListCatRec.abort) {
      requestListCatRec.abort();
    }
   requestListCatRec = new XMLHttpRequest({ mozSystem: true });
   requestListCatRec.open('get', urlCatRec, true);
   requestListCatRec.responseType = 'json';
   requestListCatRec.addEventListener('load', onRequestLoadListCatRec);
   requestListCatRec.send();
}

 function onRequestLoadListCatRec() {
 	var jsonresult = requestListCatRec.response;
 	var image=jsonresult.Image.UrlImage;
 	if(image!=null && image!="")
 	{
 	 styleimage.style.setProperty('background', 'url('+image+') no-repeat center center fixed');
	}
	else
	{
		styleimage.style.setProperty('background', 'url(images/default-bg-categoria.jpeg)');
		
	}
 	var arrayListCatRec=jsonresult.Categorias;
	 	if(arrayListCatRec===0)
	 	{

	 	}
	 	else
	 	{
	 		var idcat="";
	 		arrayListCatRec.forEach(function(doc) {
	 		idcat = idcat + doc.IdCategoria + "%7C";
	 		var docLink = document.createElement('a');
	 		docLink.textContent = doc.Categoria;
	 		
			var div = document.createElement('div');
			div.className = div.className + "divmenu";
	        div.appendChild(docLink);
			

	        var p = document.createElement('p');
	        p.appendChild(div);



	        listCatRec.appendChild(p);
	 		});

	 		/*Agregar mas*/

	 		var docLink = document.createElement('a');	 		
	 		docLink.textContent = "ver categorías";
	 		docLink.className = docLink.className + "vermas";
	 		docLink.href = "catCercadeti.html?id=00&cuent=1";
	 		docLink.addEventListener('click', function(evt) {
	          evt.preventDefault();
	          if(banderaGPS==true)
	          {
		          document.location = this.href;  
		          document.location.href = this.href;
	          }
	          else
	          {
	          	alert("Para obtener resultados, es necesario que actives tu GPS o tus servicios de localización.");
	          }
	        //alert(this.href);
	        });

	        var div = document.createElement('div');
			div.className = div.className + "divmenu2";
	        div.appendChild(docLink);

            var p = document.createElement('p');
	        p.appendChild(div);
            


 			listCatRec.appendChild(p);

 			var br=document.createElement('br');
 			listCatRec.appendChild(br);
		
	 		navigator.mozL10n.once(llamaListNegRec(idcat));
	 	}

 	}

 	function llamaListNegRec(idcat)
	{
		/*alert("entro internet"+" "+ idcat+""+latitud+" "+longitud);
		alert(latitud+" "+longitud);*/
		//var urlnegrec=serverCategoriasRecomendadas(idcat, latitud, longitud);
		var url="http://wsse.seccionamarilla.com/SearchEngine.svc/REST/RESULTBYCATEGORYMOV/"+latitud+"/"+longitud+"/5/12345/"+idcat+"/10/1/1/windowsmobile/dTV3eUkzeGY1b1cyWXpTN0Qyb0U2QU14RS9iZCt5RlU=";
		if(requestListNegRec && requestListNegRec.abort) {
	      requestListNegRec.abort();
	    }
	   requestListNegRec = new XMLHttpRequest({ mozSystem: true });
	   requestListNegRec.open('get', url, true);
	   requestListNegRec.responseType = 'json';
	   requestListNegRec.addEventListener('load', onRequestListNegRec);
	   requestListNegRec.send();
	}

function onRequestListNegRec() {
 	var jsonresult = requestListNegRec.response;
 	if(jsonresult!=null)
 	{
 	var arrayLisNegRec=jsonresult.ListRes;
	 	if(arrayLisNegRec==0)
	 	{
 		   msnbuscando.textContent="No se encontraron resultados disponibles";
		   msnbuscando.hidden=false;
	 	}
	 	else
	 	{
	 		//contListNegRec.hidden = false;
	 		msnbuscando.hidden=true;
	 		arrayLisNegRec.forEach(function(doc) {
	 		var distanciakm=0;
	 		var namenegocio=document.createElement('h4');
	 		namenegocio.textContent=doc.bn;
	 		//colocaion de estrellas 
	 		var imagrating=document.createElement('img');
	 		imagrating.src="images/rating.png";

	 		var divrating=document.createElement('div');
	 		divrating.className = divrating.className + "rating";
	 		divrating.appendChild(imagrating);
	 		//fin de estrellas

			//inicia numero de comentarios
	 		var numcomentarios=document.createElement('a');
	 		numcomentarios.className = numcomentarios.className + "comentarios";
	 		numcomentarios.textContent = "(10 comentarios)";
	 		numcomentarios.href = "#";

	 		var divcomentarios=document.createElement('div');
	 		divcomentarios.className = divcomentarios.className + "comentariosgral";
	 		divcomentarios.appendChild(numcomentarios);
 			//Fin de numero de comentarios

 			//Inicia distancia		
 			var divdistancia=document.createElement('div');
	 		divdistancia.className = divdistancia.className + "kilometrajecat";
	 		if(doc.latlon!=null && doc.latlon!="")
	 		{
	 		 distanciakm=parseFloat(doc.latlon)*10/1000;
	 		 divdistancia.textContent=distanciakm+" KM";
	 		}
 			//Fin Ditancia

	 		var contdatneg=document.createElement('a');
	 		contdatneg.href = "listDetalle.html?listadoid="+doc.listadoid;
	 		contdatneg.appendChild(namenegocio);
	 		//contdatneg.appendChild(divrating);
	 		//contdatneg.appendChild(divcomentarios);
	 		contdatneg.appendChild(divdistancia);
	 		/*contdatneg.addEventListener('click', function(evt) {
	          evt.preventDefault();
	          if(banderaGPS==true)
	          {
		          document.location = this.href;  
		          document.location.href = this.href;
	          }
	          else
	          {
	          	alert("Para obtener resultados, es necesario que actives tu GPS o tus servicios de localización.");
	          }
	        //alert(this.href);
	        });*/


	 		
            
            var conttodoneg=document.createElement('div');
            conttodoneg.className = conttodoneg.className + "listlink";
	        conttodoneg.appendChild(contdatneg);

	        contListNegRec.appendChild(conttodoneg);
	 		});
			
			
			var espacio=document.createElement('br');

			
			contListNegRec.appendChild(espacio);
			//Fin agregar boton para ver mas resultados
	 	}
	 }
	 else
	 {
	 	msnbuscando.textContent="No se encontraron resultados disponibles";
		msnbuscando.hidden=false;
	 }

 	}

 	/*Activar GPS*/
 	function geoloc(success, fail){
    var is_echo = false;
    if(navigator && navigator.geolocation) {
      navigator.geolocation.getCurrentPosition(
        function(pos) {
          if (is_echo){ return; }
          is_echo = true;
          success(pos.coords.latitude, pos.coords.longitude);
        }, 
        function() {
          if (is_echo){ return; }
          is_echo = true;
          fail();
        }
      );
    } else {
      fail();
    }
  }

  function success(latitude, longitude){
  	localStorage["lat"]="";
	localStorage["long"]="";
  	localStorage["lat"]=latitude;
	localStorage["long"]=longitude;
	latitud=localStorage["lat"];
	longitud=localStorage["long"];
	banderaGPS=true;

    navigator.mozL10n.once(llamaListCatRect); 
  }
  function fail(){
  	alert("Para obtener resultados, es necesario que actives tu GPS o tus servicios de localización.");
    var respuesta = confirm("Deseas activar la localización por default"); 
		// Caso de Aceptar
		if(respuesta)
		{
			localStorage["lat"]="";
			localStorage["long"]="";
		    localStorage["lat"]="19.432592";
			localStorage["long"]="-99.133162";
			latitud=localStorage["lat"];
			longitud=localStorage["long"];
			banderaGPS=true;
    		navigator.mozL10n.once(llamaListCatRect); 
		}
		else
		{
		   msnbuscando.textContent="Para obtener resultados, es necesario que actives tu GPS o tus servicios de localización.";
		   msnbuscando.hidden=false;
		}
  }
 	/*Fin GPS*/

 

});