46 lines
1.1 KiB
JavaScript
46 lines
1.1 KiB
JavaScript
$(document).ready(function () {
|
|
var params = OSM.params();
|
|
|
|
if (params.lat && params.lon) {
|
|
params.lat = parseFloat(params.lat);
|
|
params.lon = parseFloat(params.lon);
|
|
params.zoom = params.zoom || 17;
|
|
|
|
var url = "/edit";
|
|
|
|
if (params.editor) {
|
|
url += "?editor=" + params.editor;
|
|
}
|
|
|
|
url += OSM.formatHash(params);
|
|
|
|
$(".start-mapping").attr("href", url);
|
|
} else {
|
|
var geoSuccess = function (position) {
|
|
window.location = "/edit" + OSM.formatHash({
|
|
zoom: 17,
|
|
lat: position.coords.latitude,
|
|
lon: position.coords.longitude
|
|
});
|
|
};
|
|
|
|
$(".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 manualEdit() {
|
|
window.location = "/?edit_help=1";
|
|
}
|
|
});
|