Join our community & meet amazing people → t.me/vanlifer
Loading map data…
Member presence (snapped ~5km)
Hosting area +
Hangout (pinned)
Event
Traveler
You
Get the app Download e user actually is. if (USER_ID && navigator.geolocation) { navigator.geolocation.getCurrentPosition(function(pos) { var lat = pos.coords.latitude; var lng = pos.coords.longitude; if (!USER_LAT) { map.flyTo([lat, lng], 10, { duration: 1.5 }); } if (myLocMarker) { try { map.removeLayer(myLocMarker); } catch(e){} } myLocMarker = L.marker([lat, lng], { icon: myLocIcon }).addTo(map); myLocMarker.bindPopup('
You are here
'); try { fetch('/save_pin.php', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, body: 'lat=' + lat.toFixed(7) + '&lng=' + lng.toFixed(7) }).then(function(r){ return r.json(); }) .then(function(d){ if (d && d.ok) { USER_LAT = lat; USER_LNG = lng; loadMapData(); var msg = document.getElementById('pin-msg'); if (msg) { msg.innerHTML = ' Your host pin is set.'; } } }).catch(function(){}); } catch(e){} }, function() { /* permission denied or timeout — ignore */ }, { enableHighAccuracy: true, timeout: 10000, maximumAge: 60000 }); } else if (USER_LAT) { myLocMarker = L.marker([USER_LAT, USER_LNG], { icon: myLocIcon }).addTo(map); myLocMarker.bindPopup('
Your pinned location
'); } // ── Pin yourself on the map ───────────────────────────── window.pinMyself = function() { if (!USER_ID) { window.location = '/login.php'; return; } var btn = document.getElementById('btn-pin'); var msg = document.getElementById('pin-msg'); var c = map.getCenter(); btn.classList.add('saving'); btn.innerHTML = ' Saving…'; fetch('/save_pin.php', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, body: 'lat=' + c.lat.toFixed(7) + '&lng=' + c.lng.toFixed(7) }) .then(function(r) { return r.json(); }) .then(function(data) { btn.classList.remove('saving'); if (data.ok) { btn.innerHTML = ' Saved!'; msg.innerHTML = ' Your host pin is set.'; USER_LAT = c.lat; USER_LNG = c.lng; if (myLocMarker) map.removeLayer(myLocMarker); myLocMarker = L.marker([c.lat, c.lng], { icon: myLocIcon }).addTo(map); myLocMarker.bindPopup('
Your pinned location
'); setTimeout(function() { btn.innerHTML = ' Update Pin'; }, 2000); loadMapData(); } else { btn.innerHTML = ' Error'; setTimeout(function() { btn.innerHTML = ' Pin Me Here'; }, 2000); } }) .catch(function() { btn.classList.remove('saving'); btn.innerHTML = ' Error'; }); }; })();