]> git.openstreetmap.org Git - rails.git/blob - app/assets/javascripts/welcome.js
Merge remote-tracking branch 'openstreetmap/pull/1443'
[rails.git] / app / assets / javascripts / welcome.js
1 $(document).ready(function() {
2   var params = OSM.params();
3
4   if (params.lat && params.lon) {
5     params.lat = parseFloat(params.lat);
6     params.lon = parseFloat(params.lon);
7     params.zoom = params.zoom || 17;
8
9     var url = '/edit';
10
11     if (params.editor) {
12       url += '?editor=' + params.editor;
13     }
14
15     url += OSM.formatHash(params);
16
17     $('.start-mapping').attr('href', url);
18
19   } else {
20     var geoSuccess = function (position) {
21       window.location = '/edit' + OSM.formatHash({
22         zoom: 17,
23         lat: position.coords.latitude,
24         lon: position.coords.longitude
25       });
26     };
27
28     $('.start-mapping').on('click', function(e) {
29       e.preventDefault();
30       $('.start-mapping').addClass('loading');
31
32       if (navigator.geolocation) {
33         // handle firefox's weird implementation
34         // https://bugzilla.mozilla.org/show_bug.cgi?id=675533
35         window.setTimeout(manualEdit, 4000);
36
37         navigator.geolocation.getCurrentPosition(geoSuccess, manualEdit);
38       } else {
39         manualEdit();
40       }
41     });
42   }
43
44   function manualEdit() {
45     window.location = '/?edit_help=1';
46   }
47 });