]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/site/_key.html.erb
Eliminate interpolation in key JS
[rails.git] / app / views / site / _key.html.erb
index 6fc70ef46f1b1d71092fffe40b2af5761eebc8af..1129f69d2d3438ddae387ca32c05ea87fcce1fa6 100644 (file)
@@ -1,33 +1,32 @@
 <script type="text/javascript">
-  function openMapKey() {
+$(document).ready(function () {
+  $("#open_map_key").click(function (e) {
+    var url = $(this).attr('href'),
+        title = $(this).text();
+
+    function updateMapKey() {
+      $("#sidebar_content").load(url, {
+        layer: map.baseLayer.keyid,
+        zoom: map.getZoom()
+      });
+    }
+
     updateMapKey();
+    openSidebar({ title: title });
 
-    openSidebar({ 
-      title: "<%= t('site.key.map_key') %>",
-      onclose: closeMapKey
+    $("#sidebar").one("closed", function () {
+      map.events.unregister("zoomend", map, updateMapKey);
+      map.events.unregister("changelayer", map, updateMapKey);
     });
 
     map.events.register("zoomend", map, updateMapKey);
     map.events.register("changelayer", map, updateMapKey);
-  }
-
-  function closeMapKey() {
-    map.events.unregister("zoomend", map, updateMapKey);
-    map.events.unregister("changelayer", map, updateMapKey);
-  }
-
-  function updateMapKey() {
-    var layer = map.baseLayer.keyid;
-    var zoom = map.getZoom();
 
-    <%= remote_function :update => "sidebar_content",
-                        :url => { :action => "key" },
-                        :with => "'layer=' + layer + '&zoom=' + zoom",
-                        :method => :get
-    %>
-  }
+    e.preventDefault();
+  });
+});
 </script>
 
 <% content_for :left_menu do %>
-  <li><%= link_to_function t('site.key.map_key'), "openMapKey()", :title => t('site.key.map_key_tooltip') %></li>
+  <li><%= link_to t("site.key.map_key"), {:action => :key}, :id => "open_map_key", :title => t("site.key.map_key_tooltip") %></li>
 <% end %>