diff options
| author | Xavier Morel <xmo@openerp.com> | 2011-08-02 11:13:44 +0200 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2011-08-02 11:13:44 +0200 |
| commit | 21aab96e41a9b772f07cae3a9dbb8e76bf8b7b60 (patch) | |
| tree | 9d5014cb50ea24a345cab5a3087df03aaa443eb6 /addons/base/controllers | |
| parent | 43e9c6488230e0591cefd6187732fb7be33850f5 (diff) | |
[IMP] deduplicate display of error dialog, add some error handling improvements to restore db
bzr revid: xmo@openerp.com-20110802091344-3lk1wk7ctjhs0j3p
Diffstat (limited to 'addons/base/controllers')
| -rw-r--r-- | addons/base/controllers/main.py | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/addons/base/controllers/main.py b/addons/base/controllers/main.py index 25763a42537..b743cf79122 100644 --- a/addons/base/controllers/main.py +++ b/addons/base/controllers/main.py @@ -212,20 +212,15 @@ class Database(openerpweb.Controller): @openerpweb.httprequest def restore_db(self, req, db_file, restore_pwd, new_db): - response = None try: data = base64.encodestring(db_file.file.read()) - response = simplejson.dumps( - req.session.proxy("db").restore(restore_pwd, new_db, data)) + req.session.proxy("db").restore(restore_pwd, new_db, data) + return '' except xmlrpclib.Fault, e: if e.faultCode and e.faultCode.split(':')[0] == 'AccessDenied': - response = simplejson.dumps({'error': e.faultCode, 'title': 'Restore Database'}) - if not response: - response = simplejson.dumps({'error': 'Could not restore database !', 'title': 'Restore Database'}) + raise cherrypy.HTTPError(403) - cherrypy.response.headers['Content-Type'] = 'application/json' - cherrypy.response.headers['Content-Length'] = len(response) - return response + raise cherrypy.HTTPError() @openerpweb.jsonrequest def change_password_db(self, req, fields): |
