diff --git a/addons/web/static/src/js/chrome.js b/addons/web/static/src/js/chrome.js index b4ba5404a49..e9185429993 100644 --- a/addons/web/static/src/js/chrome.js +++ b/addons/web/static/src/js/chrome.js @@ -579,7 +579,7 @@ instance.web.Login = instance.web.Widget.extend({ */ do_login: function (db, login, password) { var self = this; - this.$el.removeClass('oe_login_invalid'); + self.hide_error(); self.$(".oe_login_pane").fadeOut("slow"); return this.session.session_authenticate(db, login, password).pipe(function() { if (self.has_local_storage) { @@ -596,12 +596,19 @@ instance.web.Login = instance.web.Widget.extend({ } } self.trigger('login_successful'); - },function () { + }, function () { self.$(".oe_login_pane").fadeIn("fast", function() { - self.$el.addClass("oe_login_invalid"); + self.show_error("Invalid username or password"); }); }); }, + show_error: function(message) { + this.$el.addClass("oe_login_invalid"); + this.$(".oe_login_error_message").text(message); + }, + hide_error: function() { + this.$el.removeClass('oe_login_invalid'); + }, }); instance.web.client_actions.add("login", "instance.web.Login"); diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml index f0b9d624607..b02fa62e12a 100644 --- a/addons/web/static/src/xml/base.xml +++ b/addons/web/static/src/xml/base.xml @@ -61,7 +61,7 @@
- +