]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/id.js
Merge remote-tracking branch 'upstream/pull/5016'
[rails.git] / app / assets / javascripts / id.js
index dd7cd3325f10f293311e79435cec6633a3d1f8ac..8c0a061ddc01bfc2333e6ad993965aad43fe0077 100644 (file)
@@ -2,33 +2,37 @@
 
 /* globals iD */
 
-document.addEventListener("DOMContentLoaded", function() {
+document.addEventListener("DOMContentLoaded", function () {
   var container = document.getElementById("id-container");
 
-  if (typeof iD === 'undefined' || !iD.Detect().support) {
-    container.innerHTML = 'This editor is supported ' +
-      'in Firefox, Chrome, Safari, Opera, Edge, and Internet Explorer 11. ' +
-      'Please upgrade your browser or use Potlatch 2 to edit the map.';
-    container.className = 'unsupported';
+  if (typeof iD === "undefined" || !iD.utilDetect().support) {
+    container.innerHTML = "This editor is supported " +
+      "in Firefox, Chrome, Safari, Opera and Edge. " +
+      "Please upgrade your browser or use JOSM to edit the map.";
+    container.className = "unsupported";
   } else {
-    var id = iD.Context()
+    var idContext = iD.coreContext();
+    idContext.connection().apiConnections([]);
+    var url = location.protocol + "//" + location.host;
+    idContext.preauth({
+      url: url,
+      apiUrl: url === "https://www.openstreetmap.org" ? "https://api.openstreetmap.org" : url,
+      access_token: container.dataset.token
+    });
+
+    var id = idContext
       .embed(true)
       .assetPath("iD/")
       .assetMap(JSON.parse(container.dataset.assetMap))
-      .locale(container.dataset.locale, container.dataset.localePath)
-      .preauth({
-        urlroot: location.protocol + "//" + location.host,
-        oauth_consumer_key: container.dataset.consumerKey,
-        oauth_secret: container.dataset.consumerSecret,
-        oauth_token: container.dataset.token,
-        oauth_token_secret: container.dataset.tokenSecret
-      });
-
-    id.map().on('move.embed', parent.$.throttle(250, function() {
+      .locale(container.dataset.locale)
+      .containerNode(container)
+      .init();
+
+    id.map().on("move.embed", parent.$.throttle(250, function () {
       if (id.inIntro()) return;
       var zoom = ~~id.map().zoom(),
-        center = id.map().center(),
-        llz = { lon: center[0], lat: center[1], zoom: zoom };
+          center = id.map().center(),
+          llz = { lon: center[0], lat: center[1], zoom: zoom };
 
       parent.updateLinks(llz, zoom);
 
@@ -46,13 +50,11 @@ document.addEventListener("DOMContentLoaded", function() {
 
       // 0ms timeout to avoid iframe JS context weirdness.
       // http://bl.ocks.org/jfirebaugh/5439412
-      setTimeout(function() {
+      setTimeout(function () {
         id.map().centerZoom(
           [data.lon, data.lat],
           Math.max(data.zoom || 15, 13));
       }, 0);
     });
-
-    id.ui()(container);
   }
 });