[IMP] correctly synchronize dblist between db pane and login
bzr revid: xmo@openerp.com-20111115094250-8c2rq2le39oc3z7b
This commit is contained in:
@@ -373,6 +373,7 @@ openerp.web.Database = openerp.web.Widget.extend(/** @lends openerp.web.Database
|
||||
}
|
||||
self.db_list.push(self.to_object(fields)['db_name']);
|
||||
self.db_list.sort();
|
||||
self.widget_parent.set_db_list(self.db_list);
|
||||
var form_obj = self.to_object(fields);
|
||||
self.wait_for_newdb(result, {
|
||||
password: form_obj['super_admin_pwd'],
|
||||
@@ -402,6 +403,7 @@ openerp.web.Database = openerp.web.Widget.extend(/** @lends openerp.web.Database
|
||||
}
|
||||
$db_list.find(':selected').remove();
|
||||
self.db_list.splice(_.indexOf(self.db_list, db, true), 1);
|
||||
self.widget_parent.set_db_list(self.db_list);
|
||||
self.do_notify("Dropping database", "The database '" + db + "' has been dropped");
|
||||
});
|
||||
}
|
||||
@@ -543,8 +545,7 @@ openerp.web.Login = openerp.web.Widget.extend(/** @lends openerp.web.Login# */{
|
||||
this.$element.find("form").submit(this.on_submit);
|
||||
|
||||
this.rpc("/web/database/get_list", {}, function(result) {
|
||||
var tpl = openerp.web.qweb.render('Login_dblist', {db_list: result.db_list, selected_db: self.selected_db});
|
||||
self.$element.find("input[name=db]").replaceWith(tpl)
|
||||
self.set_db_list(result.db_list);
|
||||
},
|
||||
function(error, event) {
|
||||
if (error.data.fault_code === 'AccessDenied') {
|
||||
@@ -557,6 +558,11 @@ openerp.web.Login = openerp.web.Widget.extend(/** @lends openerp.web.Login# */{
|
||||
this.database.stop();
|
||||
this._super();
|
||||
},
|
||||
set_db_list: function (list) {
|
||||
this.$element.find("[name=db]").replaceWith(
|
||||
openerp.web.qweb.render('Login_dblist', {
|
||||
db_list: list, selected_db: this.selected_db}))
|
||||
},
|
||||
on_login_invalid: function() {
|
||||
this.$element.closest(".openerp").addClass("login-mode");
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user