[FIX] problem in database manager when db list is desactivated
authorniv-openerp <nicolas.vanhoren@openerp.com>
Mon, 27 May 2013 12:24:15 +0000 (14:24 +0200)
committerniv-openerp <nicolas.vanhoren@openerp.com>
Mon, 27 May 2013 12:24:15 +0000 (14:24 +0200)
lp bug: https://launchpad.net/bugs/1166856 fixed

bzr revid: nicolas.vanhoren@openerp.com-20130527122415-pk8i2uqfrgyiac83

addons/web/controllers/main.py
addons/web/static/src/js/chrome.js

index c43f2b5..93e08db 100644 (file)
@@ -772,20 +772,11 @@ class Database(openerpweb.Controller):
     @openerpweb.jsonrequest
     def duplicate(self, req, fields):
         params = dict(map(operator.itemgetter('name', 'value'), fields))
-        return req.session.proxy("db").duplicate_database(
-            params['super_admin_pwd'],
-            params['db_original_name'],
-            params['db_name'])
-
-    @openerpweb.jsonrequest
-    def duplicate(self, req, fields):
-        params = dict(map(operator.itemgetter('name', 'value'), fields))
         duplicate_attrs = (
             params['super_admin_pwd'],
             params['db_original_name'],
             params['db_name'],
         )
-
         return req.session.proxy("db").duplicate_database(*duplicate_attrs)
 
     @openerpweb.jsonrequest
@@ -793,9 +784,9 @@ class Database(openerpweb.Controller):
         password, db = operator.itemgetter(
             'drop_pwd', 'drop_db')(
                 dict(map(operator.itemgetter('name', 'value'), fields)))
-
+        
         try:
-            return req.session.proxy("db").drop(password, db)
+            if req.session.proxy("db").drop(password, db):return True
         except xmlrpclib.Fault, e:
             if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied':
                 return {'error': e.faultCode, 'title': 'Drop Database'}
index 3944078..de49b11 100644 (file)
@@ -380,7 +380,7 @@ instance.web.DatabaseManager = instance.web.Widget.extend({
         var fetch_langs = this.rpc("/web/session/get_lang_list", {}).done(function(result) {
             self.lang_list = result;
         });
-        return $.when(fetch_db, fetch_langs).done(self.do_render);
+        return $.when(fetch_db, fetch_langs).always(self.do_render);
     },
     do_render: function() {
         var self = this;