Loading indicator for notes
authorAaron Lidman <aaronlidman@gmail.com>
Tue, 12 Nov 2013 19:20:23 +0000 (11:20 -0800)
committerAaron Lidman <aaronlidman@gmail.com>
Tue, 12 Nov 2013 19:20:23 +0000 (11:20 -0800)
app/assets/javascripts/index/browse.js
app/assets/javascripts/index/note.js.erb

index a0bb4268599322d03beb66b7f6c921f987c65639..3ebe9531d41e26a831727457c97d6ce9c998a7fa 100644 (file)
@@ -135,7 +135,9 @@ function initializeBrowse(map) {
   }
 
   function setStatus(status) {
-    $('#browse_status').append($('<p></p>').text(status));
+    if($('#browse_status').is(':empty')) {
+      $('#browse_status').append($('<p></p>').text(status));
+    }
   }
 
   function clearStatus() {
index 9e92c9a1fb7c968e0790db391d3d1a103a41d931..a11f6a72c93a8dc8393aeea1c98be5d470082edf 100644 (file)
@@ -68,13 +68,26 @@ OSM.Note = function(map) {
     };
 
     page.load = function() {
+        var loadTimer = setTimeout(setLoading, 250);
         $('#sidebar_content').load(window.location.pathname + "?xhr=1", function(a, b, xhr) {
             if (xhr.getResponseHeader('X-Page-Title')) {
                 document.title = xhr.getResponseHeader('X-Page-Title');
             }
             bind();
+            clearTimeout(loadTimer);
+            clearLoading();
         });
     };
 
+    function setLoading() {
+      if($('#browse_status').is(':empty')) {
+        $('#browse_status').append($('<p></p>').text(I18n.t('browse.start_rjs.loading')));
+      }
+    }
+
+    function clearLoading() {
+      $('#browse_status').empty();
+    }
+
     return page;
 };