From: niv-openerp Date: Tue, 13 Aug 2013 14:16:51 +0000 (+0200) Subject: [FIX] remove password storing in localstorage X-Git-Tag: InsPy_master01~1036 X-Git-Url: http://git.inspyration.org/?a=commitdiff_plain;h=a9ffb0061b91f3611529dd770b4e91db69ee7c77;p=odoo%2Fodoo.git [FIX] remove password storing in localstorage lp bug: https://launchpad.net/bugs/1211795 fixed bzr revid: nicolas.vanhoren@openerp.com-20130813141651-b5f9eegs2edz4mny --- diff --git a/addons/web/static/src/js/chrome.js b/addons/web/static/src/js/chrome.js index db3cb69..82cdf46 100644 --- a/addons/web/static/src/js/chrome.js +++ b/addons/web/static/src/js/chrome.js @@ -677,6 +677,19 @@ instance.web.Login = instance.web.Widget.extend({ if (this.params.login_successful) { this.on('login_successful', this, this.params.login_successful); } + // some cleanup to remove any trace of that last login feature + if (typeof(localStorage) != 'undefined') { + var toRemove = []; + _.each(_.range(localStorage.length), function(i) { + var key = localStorage.key(i); + if (key.match(/^.*?\|last_password$/)) { + toRemove.push(key); + } + }); + _.each(toRemove, function(k) { + localStorage.removeItem(k); + }); + } }, start: function() { var self = this; @@ -701,9 +714,6 @@ instance.web.Login = instance.web.Widget.extend({ .always(function() { if (self.selected_db && self.has_local_storage && self.remember_credentials) { self.$("[name=login]").val(localStorage.getItem(self.selected_db + '|last_login') || ''); - if (self.session.debug) { - self.$("[name=password]").val(localStorage.getItem(self.selected_db + '|last_password') || ''); - } } }); } @@ -764,9 +774,6 @@ instance.web.Login = instance.web.Widget.extend({ return this.session.session_authenticate(db, login, password).then(function() { if (self.has_local_storage && self.remember_credentials) { localStorage.setItem(db + '|last_login', login); - if (self.session.debug) { - localStorage.setItem(db + '|last_password', password); - } } self.trigger('login_successful'); }, function () {