Pass details of any selected object to remote editors
authorTom Hughes <tom@compton.nu>
Fri, 6 Dec 2013 00:19:35 +0000 (00:19 +0000)
committerTom Hughes <tom@compton.nu>
Fri, 6 Dec 2013 00:19:35 +0000 (00:19 +0000)
app/assets/javascripts/application.js
app/assets/javascripts/index.js

index 6a4fdf6ab60dabf3f6d9730749b5447fc700f91d..7072b7c6be8a40dce9a3262d541f780b07d82b17 100644 (file)
@@ -24,7 +24,7 @@ function zoomPrecision(zoom) {
     return Math.max(0, Math.ceil(Math.log(zoom) / Math.LN2));
 }
 
     return Math.max(0, Math.ceil(Math.log(zoom) / Math.LN2));
 }
 
-function remoteEditHandler(bbox, select) {
+function remoteEditHandler(bbox, object) {
   var loaded = false,
       query = {
           left: bbox.getWest() - 0.0001,
   var loaded = false,
       query = {
           left: bbox.getWest() - 0.0001,
@@ -33,7 +33,7 @@ function remoteEditHandler(bbox, select) {
           bottom: bbox.getSouth() - 0.0001
       };
 
           bottom: bbox.getSouth() - 0.0001
       };
 
-  if (select) query.select = select;
+  if (object) query.select = object.type + object.id;
 
   var iframe = $('<iframe>')
     .hide()
 
   var iframe = $('<iframe>')
     .hide()
index 55f1f8f1e95a60ef680798f58503ca3f095ffde4..0f2971f2c9e6b26c6f1af9f86d861581badc5b66 100644 (file)
@@ -197,8 +197,9 @@ $(document).ready(function () {
   });
 
   $("a[data-editor=remote]").click(function(e) {
   });
 
   $("a[data-editor=remote]").click(function(e) {
-      remoteEditHandler(map.getBounds());
-      e.preventDefault();
+    var params = OSM.mapParams(this.search);
+    remoteEditHandler(map.getBounds(), params.object);
+    e.preventDefault();
   });
 
   if (OSM.params().edit_help) {
   });
 
   if (OSM.params().edit_help) {
@@ -281,7 +282,7 @@ $(document).ready(function () {
   });
 
   if (OSM.preferred_editor == "remote" && document.location.pathname == "/edit") {
   });
 
   if (OSM.preferred_editor == "remote" && document.location.pathname == "/edit") {
-    remoteEditHandler(map.getBounds());
+    remoteEditHandler(map.getBounds(), params.object);
     OSM.router.setCurrentPath("/");
   }
 
     OSM.router.setCurrentPath("/");
   }