40 lines
1,019 B
JavaScript
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";
|
|
}
|
|
});
|