openstreetmap-website/app/assets/javascripts/welcome.js

40 lines
1,019 B
JavaScript

$(document).ready(function () {
const params = OSM.params();
if (params.lat && params.lon) {
let url = "/edit";
if (params.editor) url += "?editor=" + params.editor;
if (!params.zoom) params.zoom = 17;
url += OSM.formatHash(params);
$(".start-mapping").attr("href", url);
} else {
$(".start-mapping").on("click", function (e) {
e.preventDefault();
$(".start-mapping").addClass("loading");
if (navigator.geolocation) {
// handle firefox's weird implementation
// https://bugzilla.mozilla.org/show_bug.cgi?id=675533
window.setTimeout(manualEdit, 4000);
navigator.geolocation.getCurrentPosition(geoSuccess, manualEdit);
} else {
manualEdit();
}
});
}
function geoSuccess(position) {
window.location = "/edit" + OSM.formatHash({
zoom: 17,
lat: position.coords.latitude,
lon: position.coords.longitude
});
}
function manualEdit() {
window.location = "/?edit_help=1";
}
});