]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/site/index.html.erb
Rework application configuration
[rails.git] / app / views / site / index.html.erb
index 12cc1d275e4d7c0817f7bb4a5dd369bd0c93f72f..ddd66a861553e79b32936b224a70b8bf16e1e876 100644 (file)
@@ -125,7 +125,7 @@ end
   function mapInit(){
     map = createMap("map");
 
-    <% unless OSM_STATUS == :api_offline or OSM_STATUS == :database_offline %>
+    <% unless STATUS == :api_offline or STATUS == :database_offline %>
       map.dataLayer = new OpenLayers.Layer("<%= I18n.t 'browse.start_rjs.data_layer_name' %>", { "visibility": false });
       map.dataLayer.events.register("visibilitychanged", map.dataLayer, toggleData);
       map.addLayer(map.dataLayer);
@@ -170,7 +170,8 @@ end
         url += "/full";
       <% end %>
 
-      addObjectToMap(url, <%= object_zoom %>);
+      // IE requires Vector layers be initialised on page load, and not under deferred script conditions
+      Event.observe(window, 'load', function() { addObjectToMap(url, <%= object_zoom %>) });
     <% end %>
 
     map.events.register("moveend", map, updateLocation);
@@ -182,7 +183,7 @@ end
   function toggleData() {
     if (map.dataLayer.visibility) {
       <%= remote_function :url => { :controller => 'browse', :action => 'start' } %>
-    } else {
+    } else if (map.dataLayer.active) {
       closeSidebar();
     }
   }
@@ -191,6 +192,10 @@ end
     return getMapCenter();
   }
 
+  function getZoom() {
+    return getMapZoom();
+  }
+
   function setPosition(lat, lon, zoom, min_lon, min_lat, max_lon, max_lat) {
     var centre = new OpenLayers.LonLat(lon, lat);