From b2415915cd8c1619f833dfe524103003b4102b11 Mon Sep 17 00:00:00 2001 From: gpa Date: Thu, 18 Aug 2011 11:53:26 +0530 Subject: [PATCH] [FIX] Fixed problem of import translation do not work after another import lp bug: https://launchpad.net/bugs/826623 fixed bzr revid: gpa@tinyerp.com-20110818062326-bc0ti49g2p6e6z7w --- .../base/module/wizard/base_import_language.py | 14 +++++++++++--- .../module/wizard/base_import_language_view.xml | 1 + 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/openerp/addons/base/module/wizard/base_import_language.py b/openerp/addons/base/module/wizard/base_import_language.py index d73cd0864a6..f9587df1911 100644 --- a/openerp/addons/base/module/wizard/base_import_language.py +++ b/openerp/addons/base/module/wizard/base_import_language.py @@ -35,9 +35,13 @@ class base_language_import(osv.osv_memory): 'name': fields.char('Language Name',size=64 , required=True), 'code': fields.char('Code (eg:en__US)',size=5 , required=True), 'data': fields.binary('File', required=True), + 'overwrite': fields.boolean('Overwrite Existing Terms'), + } + _defaults = { + 'overwrite': False } - def import_lang(self, cr, uid, ids, context): + def import_lang(self, cr, uid, ids, context=None): """ Import Language @param cr: the current row, from the database cursor. @@ -45,8 +49,12 @@ class base_language_import(osv.osv_memory): @param ids: the ID or list of IDs @param context: A standard dictionary """ - + if context is None: + context = {} + import_data = self.browse(cr, uid, ids)[0] + if import_data.overwrite: + context = {'overwrite': True} fileobj = TemporaryFile('w+') fileobj.write(base64.decodestring(import_data.data)) @@ -56,7 +64,7 @@ class base_language_import(osv.osv_memory): fileformat = first_line.endswith("type,name,res_id,src,value") and 'csv' or 'po' fileobj.seek(0) - tools.trans_load_data(cr, fileobj, fileformat, import_data.code, lang_name=import_data.name) + tools.trans_load_data(cr, fileobj, fileformat, import_data.code, lang_name=import_data.name, context=context) tools.trans_update_res_ids(cr) fileobj.close() return {} diff --git a/openerp/addons/base/module/wizard/base_import_language_view.xml b/openerp/addons/base/module/wizard/base_import_language_view.xml index d313afc4080..4a1d7e5b758 100644 --- a/openerp/addons/base/module/wizard/base_import_language_view.xml +++ b/openerp/addons/base/module/wizard/base_import_language_view.xml @@ -27,6 +27,7 @@ +