]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/index/note.js
Merge remote-tracking branch 'upstream/pull/4770'
[rails.git] / app / assets / javascripts / index / note.js
index e5eb3a04148112279862854d3136ced79cbfe175..15fedb1d113b52bbd8d402427af3d38c8c7f23ed 100644 (file)
@@ -52,20 +52,18 @@ OSM.Note = function (map) {
           OSM.loadSidebarContent(path, function () {
             initialize(path, id, moveToNote);
           });
           OSM.loadSidebarContent(path, function () {
             initialize(path, id, moveToNote);
           });
+        },
+        error: function (xhr) {
+          $(form).find("#comment-error")
+            .text(xhr.responseText)
+            .prop("hidden", false);
+          updateButtons(form);
         }
       });
     });
 
     content.find("textarea").on("input", function (e) {
         }
       });
     });
 
     content.find("textarea").on("input", function (e) {
-      var form = e.target.form;
-
-      if ($(e.target).val() === "") {
-        $(form.close).val(I18n.t("javascripts.notes.show.resolve"));
-        $(form.comment).prop("disabled", true);
-      } else {
-        $(form.close).val(I18n.t("javascripts.notes.show.comment_and_resolve"));
-        $(form.comment).prop("disabled", false);
-      }
+      updateButtons(e.target.form);
     });
 
     content.find("textarea").val("").trigger("input");
     });
 
     content.find("textarea").val("").trigger("input");
@@ -84,6 +82,17 @@ OSM.Note = function (map) {
     if (callback) callback();
   }
 
     if (callback) callback();
   }
 
+  function updateButtons(form) {
+    $(form).find("input[type=submit]").prop("disabled", false);
+    if ($(form.text).val() === "") {
+      $(form.close).val($(form.close).data("defaultActionText"));
+      $(form.comment).prop("disabled", true);
+    } else {
+      $(form.close).val($(form.close).data("commentActionText"));
+      $(form.comment).prop("disabled", false);
+    }
+  }
+
   function moveToNote() {
     var data = $(".details").data();
     if (!data) return;
   function moveToNote() {
     var data = $(".details").data();
     if (!data) return;