]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/index/export.js
Add 'x' to close welcome box; remember preference
[rails.git] / app / assets / javascripts / index / export.js
index 70684eca9dac0dd70b26f8ebb57c636aa023f9a0..053f5169fa9832e622695042b88d18357b204169 100644 (file)
@@ -14,21 +14,20 @@ OSM.Export = function(map) {
 
   function boundsChanged() {
     var bounds = getBounds();
-
     map.fitBounds(bounds);
     locationFilter.setBounds(bounds);
-
-    enableFilter();
+    locationFilter.enable();
     validateControls();
   }
 
-  function enableFilter() {
-    if (!locationFilter.getBounds().isValid()) {
-      locationFilter.setBounds(map.getBounds().pad(-0.2));
-    }
+  function enableFilter(e) {
+    e.preventDefault();
 
     $("#drag_box").hide();
+
+    locationFilter.setBounds(map.getBounds().pad(-0.2));
     locationFilter.enable();
+    validateControls();
   }
 
   function update() {
@@ -46,11 +45,12 @@ OSM.Export = function(map) {
 
   function validateControls() {
     $("#export_osm_too_large").toggle(getBounds().getSize() > OSM.MAX_REQUEST_AREA);
+    $("#export_commit").toggle(getBounds().getSize() < OSM.MAX_REQUEST_AREA);
   }
 
   page.pushstate = page.popstate = function(path) {
     $("#export_tab").addClass("current");
-    $('#sidebar_content').load(path, page.load);
+    OSM.loadSidebarContent(path, page.load);
   };
 
   page.load = function() {
@@ -60,8 +60,10 @@ OSM.Export = function(map) {
 
     $("#maxlat, #minlon, #maxlon, #minlat").change(boundsChanged);
     $("#drag_box").click(enableFilter);
+    $("#sidebar_content .close").on("click", page.minimizeSidebar);
 
     update();
+    return map.getState();
   };
 
   page.unload = function() {