summaryrefslogtreecommitdiff
path: root/addons/web/controllers/main.py
diff options
context:
space:
mode:
authorcod-odoo <cod@openerp.com>2014-09-12 15:32:16 +0530
committerRichard Mathot <rim@openerp.com>2014-10-03 15:30:46 +0200
commit4e272542ea1681277e087f59a56b5cf62eafc64b (patch)
treebc446453ce3d47a7b3406e7592cf3c84f00cbb41 /addons/web/controllers/main.py
parent0b42e36da3fba78fd2ea9da3ada6e80dc2be39cb (diff)
[IMP] database manager: options on dump format
Diffstat (limited to 'addons/web/controllers/main.py')
-rw-r--r--addons/web/controllers/main.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py
index 0f4b3d36a1c..1bdaa3ed5f7 100644
--- a/addons/web/controllers/main.py
+++ b/addons/web/controllers/main.py
@@ -748,14 +748,17 @@ class Database(http.Controller):
return {'error': _('Could not drop database !'), 'title': _('Drop Database')}
@http.route('/web/database/backup', type='http', auth="none")
- def backup(self, backup_db, backup_pwd, token):
+ def backup(self, backup_db, backup_pwd, token, **kwargs):
try:
+ format = kwargs.get('format')
+ ext = "zip" if format == 'zip' else "dump"
db_dump = base64.b64decode(
- request.session.proxy("db").dump(backup_pwd, backup_db))
- filename = "%(db)s_%(timestamp)s.dump" % {
+ request.session.proxy("db").dump(backup_pwd, backup_db, format))
+ filename = "%(db)s_%(timestamp)s.%(ext)s" % {
'db': backup_db,
'timestamp': datetime.datetime.utcnow().strftime(
- "%Y-%m-%d_%H-%M-%SZ")
+ "%Y-%m-%d_%H-%M-%SZ"),
+ 'ext': ext
}
return request.make_response(db_dump,
[('Content-Type', 'application/octet-stream; charset=binary'),