Some of our JavaScript files have UI messages but we don't want to
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Fri, 2 Oct 2009 20:19:28 +0000 (20:19 +0000)
committerÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Fri, 2 Oct 2009 20:19:28 +0000 (20:19 +0000)
make them dynamic.

So I'm creating a globally scoped JavaScript array called rails_i18n
which holds some of these messages. It's loaded in <head> before any
of the JavaScript files so it should always be available.

app/views/layouts/site.html.erb
config/locales/en.yml
public/javascripts/site.js

index 386fd8b261d3071a82131f89ae373852d1a5fceb..82efdefce4ff0e2e027f5917e5cd736cc8edb585 100644 (file)
@@ -1,6 +1,12 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<%= I18n.locale %>" lang="<%= I18n.locale %>" dir="<%= t'html.dir' %>">
   <head>
+    <script type="text/javascript">
+      /* This is a hack so we don't have to dynamically generate some of our JavaScript files */
+      var rails_i18n = new Array();
+      rails_i18n["layouts.edit_zoom_alert"]    = '<%= escape_javascript(t('layouts.edit_zoom_alert')) %>';
+      rails_i18n["layouts.history_zoom_alert"] = '<%= escape_javascript(t('layouts.history_zoom_alert')) %>';
+    </script>
     <%= javascript_include_tag 'prototype' %>
     <%= javascript_include_tag 'site' %>
     <!--[if lt IE 7]><%= javascript_include_tag 'pngfix' %><![endif]--> <!-- thanks, microsoft! -->
index 025c733573b280b5a4087dddb86bbcf5e0265d37..7e096def5e021997a3bc58e08342f5a1aab2cd87 100644 (file)
@@ -429,8 +429,10 @@ en:
     view_tooltip: View maps
     edit: Edit
     edit_tooltip: Edit maps
+    edit_zoom_alert: You must zoom in to edit the map
     history: History
     history_tooltip: Changeset history
+    history_zoom_alert: You must zoom in to see the editing history
     export: Export
     export_tooltip: Export map data
     gps_traces: GPS Traces
index b6566fa810aea39da85fb4a61de998e37cf30ec6..17b2f066875c1ed487c9b15c29b1b106bb9031ae 100644 (file)
@@ -1,3 +1,4 @@
+
 /*
  * Called as the user scrolls/zooms around to aniplate hrefs of the
  * view tab and various other links
@@ -61,7 +62,7 @@ function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat,objtype,obj
       node.href = setArgs("/edit", args);
       node.style.fontStyle = 'normal';
     } else {
-      node.href = 'javascript:alert("zoom in to edit map");';
+      node.href = 'javascript:alert(rails_i18n["layouts.edit_zoom_alert"]);';
       node.style.fontStyle = 'italic';
     }
   }
@@ -86,7 +87,7 @@ function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat,objtype,obj
       node.href = setArgs("/history", args);
       node.style.fontStyle = 'normal';
     } else {
-      node.href = 'javascript:alert("zoom in to see editing history");';
+      node.href = 'javascript:alert(rails_i18n["layouts.history_zoom_alert"]);';
       node.style.fontStyle = 'italic';
     }
   }