BASE: fix import the same lang

bzr revid: ced-5f85dc28c4c3abf998841988f9681606118f0ba2
This commit is contained in:
ced 2007-01-09 14:45:24 +00:00
parent 1b5fe6c207
commit 521d64794f
2 changed files with 7 additions and 12 deletions

View File

@ -48,14 +48,8 @@ view_form="""<?xml version="1.0"?>
class wizard_import_lang(wizard.interface):
def _import_lang(self, cr, uid, data, context):
form=data['form']
lang_obj=pooler.get_pool(cr.dbname).get('res.lang')
ids=lang_obj.search(cr, uid, [('code', '=', form['code'])])
if ids:
lang_obj.write(cr, uid, ids, {'name': form['name']})
else:
lang_obj.create(cr, uid, {'code': form['code'], 'name': form['name']})
buf=base64.decodestring(data['form']['data']).split('\n')
tools.trans_load_data(cr.dbname, buf, data['form']['code'])
tools.trans_load_data(cr.dbname, buf, form['code'], lang_name=form['name'])
return {}
fields_form={
'name':{'string':'Language name', 'type':'char', 'size':64, 'required':True},

View File

@ -245,7 +245,7 @@ def trans_load(db_name, filename, lang, strict=False):
logger.notifyChannel("init", netsvc.LOG_ERROR, "couldn't read file")
return trans_load_data(db_name, data, lang, strict=False)
def trans_load_data(db_name, data, lang, strict=False):
def trans_load_data(db_name, data, lang, strict=False, lang_name=None):
logger = netsvc.Logger()
logger.notifyChannel("init", netsvc.LOG_INFO, 'loading translation file for language %s' % (lang))
pool = pooler.get_pool(db_name)
@ -257,10 +257,11 @@ def trans_load_data(db_name, data, lang, strict=False):
ids = lang_obj.search(cr, uid, [('code','=',lang)])
if not ids:
lang_name=lang
languages=tools.get_languages()
if lang in languages:
lang_name=languages[lang]
if not lang_name:
lang_name=lang
languages=tools.get_languages()
if lang in languages:
lang_name=languages[lang]
ids = lang_obj.create(cr, uid, {'code':lang, 'name':lang_name, 'translatable':1})
else:
lang_obj.write(cr, uid, ids, {'translatable':1})