]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/index/browse.js
Deep copy the original style when highlighting an object
[rails.git] / app / assets / javascripts / index / browse.js
index 28a830858f2534168629fb1f86385b0d19285a69..779a21d6986819423be701353b7ff9959797d2bf 100644 (file)
@@ -26,17 +26,17 @@ OSM.initializeBrowse = function (map) {
     onSelect(e.layer);
   });
 
-  map.on('layeradd', function (e) {
+  map.on("layeradd", function (e) {
     if (e.layer === dataLayer) {
       map.on("moveend", updateData);
       updateData();
     }
   });
 
-  map.on('layerremove', function (e) {
+  map.on("layerremove", function (e) {
     if (e.layer === dataLayer) {
       map.off("moveend", updateData);
-      $('#browse_status').empty();
+      $("#browse_status").empty();
     }
   });
 
@@ -48,16 +48,21 @@ OSM.initializeBrowse = function (map) {
   }
 
   function displayFeatureWarning(count, limit, add, cancel) {
-    $('#browse_status').html(
-      $("<p class='warning'></p>")
-        .text(I18n.t("browse.start_rjs.feature_warning", { num_features: count, max_features: limit }))
-        .prepend(
-          $("<span class='icon close'></span>")
-            .click(cancel))
+    $("#browse_status").html(
+      $("<div>")
         .append(
-          $("<input type='submit'>")
-            .val(I18n.t('browse.start_rjs.load_data'))
-            .click(add)));
+          $("<h2>")
+            .text(I18n.t("browse.start_rjs.load_data"))
+            .prepend($("<span class='icon close'></span>").click(cancel)))
+        .append(
+          $("<div>")
+            .append(
+              $("<p class='alert alert-warning clearfix'></p>")
+                .text(I18n.t("browse.start_rjs.feature_warning", { num_features: count, max_features: limit })))
+            .append(
+              $("<input type='submit' class='btn btn-primary'>")
+                .val(I18n.t("browse.start_rjs.load_data"))
+                .click(add))));
   }
 
   var dataLoader;
@@ -92,13 +97,13 @@ OSM.initializeBrowse = function (map) {
         var features = dataLayer.buildFeatures(xml);
 
         function addFeatures() {
-          $('#browse_status').empty();
+          $("#browse_status").empty();
           dataLayer.addData(features);
           browseBounds = bounds;
         }
 
         function cancelAddFeatures() {
-          $('#browse_status').empty();
+          $("#browse_status").empty();
         }
 
         if (features.length < maxFeatures) {
@@ -119,10 +124,10 @@ OSM.initializeBrowse = function (map) {
     }
 
     // Redraw in selected style
-    layer.originalStyle = layer.options;
-    layer.setStyle({color: '#0000ff', weight: 8});
+    layer.originalStyle = { color: layer.options.color, weight: layer.options.weight };
+    layer.setStyle({ color: "#0000ff", weight: 8 });
 
-    OSM.router.route('/' + layer.feature.type + '/' + layer.feature.id);
+    OSM.router.route("/" + layer.feature.type + "/" + layer.feature.id);
 
     // Stash the currently drawn feature
     selectedLayer = layer;