/* ***************************************************************************** ************************* M9P2P-1 GEOLOCALIZACION-2 ************************* ************************ FECHA DE CREACION: 2016nov08 *********************** ***************************************************************************** */ var mapeo, lat, lng, salida, ubica; if (localStorage.ubicacion) { ubica = JSON.parse(localStorage.ubicacion); } else { ubica = new Array; } var modoDesplazar = "desplazarse"; var distanciaDesplazada = 0; $(function() { $("#limpiarMapa").on("click", limpiarMapa); $("#acortarDistancia").on("click", acortarDistancia); function ubicacionActual() { GMaps.geolocate( { success: function(position) { lat = position.coords.latitude; lng = position.coords.longitude; salida = [lat, lng]; mapeo = new GMaps( { el: "#mapeo", lat: lat, lng: lng, click: conectarMarca, tap: conectarMarca }); mapeo.addMarker( { lat: lat, lng: lng }); }, error: function(error) { alert("La ubicación ha sufrido una falla y marca el siguiente error:" + "\n\n" + error.message + " \n\n" + "Por favor, anote el protocolo de seguridad: 'https://' al inicio de la URL e inténtelo de nuevo.\n\n Atentamente\n\n APC62WM"); }, not_supported: function() { alert("IMPORTANTE!!!\n\n Su navegador no soporta la Geolocalización\n\n Por favor, realice las adecuaciones necesarias\n\n Atentamente \n\nAPC62WM."); }, }); } ubicacionActual(); function limpiarMapa() { delete localStorage.ubicacion; mapeo.cleanRoute(); mapeo.removeMarkers(); mapeo.addMarker( { lat: lat, lng: lng }); ubicacionActual(); } function conectarMarca(e) { var conLat, conLng; mapeo.drawRoute( { origin: [lat, lng], destination: [e.latLng.lat(), e.latLng.lng()], travelMode: "desplazarse", strokeColor: "rgba(255, 0, 0, 1)", strokeOpacity: 0.8, strokeWeight: 3 }); conLat = lat; conLng = lng; lat = e.latLng.lat(); lng = e.latLng.lng(); mapeo.addMarker( { lat: lat, lng: lng }); } function acortarDistancia() { mapeo.cleanRoute(); mapeo.removeMarkers(); mapeo.addMarker( { lat: salida[0], lng: salida[1] }); mapeo.drawRoute( { origin: salida, destination: [lat, lng], travelMode: "desplazarse", strokeColor: "rgba(255, 0, 0, 1)", strokeOpacity: 0.8, strokeWeight: 3 }); mapeo.addMarker( { lat: lat, lng: lng }); } if(navigator.geolocation) { navigator.geolocation.getCurrentPosition(succesFunction, errorFunction); } else { alert("La geolocalización no es soportada por tu navegador."); } function succesFunction(position) { var latitud = position.coords.latitude; var longitud = position.coords.longitude; alert("Te encuentras en las siguientes coordenadas:\n\n latitud: " + latitud + "\n\nlongitud: " + longitud + "\n\nAhora mostraremos en el mapa tu ubicación. \n\nAtentamente \n\nAPC62WM"); $("#ubicacion").html("latitud: " + latitud + ", longitud: " + longitud); } function errorFunction(position) { alert("Hay una falla en la geolocalización de tu navegador."); } window.onbeforeunload = function() { localStorage.ubicacion = JSON.stringify(ubica); }; document.addEventListener('visibilitychange', function() { localStorage.ubicacion = JSON.stringify(ubica); }, false); });