Unverified Commit 0c995eb6 authored by Steffen van Bergerem's avatar Steffen van Bergerem Committed by Dennis Schubert
Browse files

Add JavaScript for mobile alerts

parent a80806ca
Loading
Loading
Loading
Loading
+19 −0
Original line number Diff line number Diff line
(function() {
  Diaspora.Mobile.Alert = {
    _flash: function(message, type) {
      var html = "<div class='alert alert-" + type + " alert-dismissible fade in' role='alert'>" +
                    "<button type='button' class='close' data-dismiss='alert' aria-label='" +
                      Diaspora.I18n.t("header.close") +
                    "'>" +
                      "<span aria-hidden='true'><i class='entypo-cross'></i></span>" +
                    "</button>" +
                    message +
                  "</div>";
      $("#flash-messages").append(html);
    },

    success: function(message) { this._flash(message, "success"); },

    error: function(message) { this._flash(message, "danger"); }
  };
})();
+29 −0
Original line number Diff line number Diff line
describe("Diaspora.Mobile.Alert", function() {
  describe("_flash", function() {
    beforeEach(function() {
      spec.content().html("<div id='flash-messages'></div>");
    });

    it("appends an alert to the #flash-messages div", function() {
      Diaspora.Mobile.Alert._flash("Oh snap! You got an error!", "error-class");
      expect($("#flash-messages .alert")).toHaveClass("alert-error-class");
      expect($("#flash-messages .alert").text()).toBe("Oh snap! You got an error!");
    });
  });

  describe("success", function() {
    it("calls _flash", function() {
      spyOn(Diaspora.Mobile.Alert, "_flash");
      Diaspora.Mobile.Alert.success("Awesome!");
      expect(Diaspora.Mobile.Alert._flash).toHaveBeenCalledWith("Awesome!", "success");
    });
  });

  describe("error", function() {
    it("calls _flash", function() {
      spyOn(Diaspora.Mobile.Alert, "_flash");
      Diaspora.Mobile.Alert.error("Oh noez!");
      expect(Diaspora.Mobile.Alert._flash).toHaveBeenCalledWith("Oh noez!", "danger");
    });
  });
});