[MERGE] tools.translate, test_reports, res_config: several bugfixes (see buglinks)

lp bug: https://launchpad.net/bugs/692845 fixed
lp bug: https://launchpad.net/bugs/692598 fixed
lp bug: https://launchpad.net/bugs/692746 fixed

bzr revid: odo@openerp.com-20101221170809-zqusunjw2em9xz9y
This commit is contained in:
Olivier Dony 2010-12-21 18:08:09 +01:00
commit 7964fd96f8
3 changed files with 16 additions and 5 deletions

View File

@ -24,6 +24,7 @@ from operator import attrgetter
from osv import osv, fields
from tools.translate import _
import netsvc
from tools import ustr
import pooler
@ -379,9 +380,8 @@ class res_config_installer(osv.osv_memory):
continue
fields[module.name].update(
readonly=True,
help=fields[module.name].get('help', '') +
help= ustr(fields[module.name].get('help', '')) +
_('\n\nThis addon is already installed on your system'))
return fields
def execute(self, cr, uid, ids, context=None):

View File

@ -197,6 +197,15 @@ def try_report_action(cr, uid, action_id, active_model=None, active_ids=None,
view_data.update(wiz_data)
log.debug("View data is: %r", view_data)
for fk, field in view_res.get('fields',{}).items():
# Default fields returns list of int, while at create()
# we need to send a [(6,0,[int,..])]
if field['type'] in ('one2many', 'many2many') \
and view_data.get(fk, False) \
and isinstance(view_data[fk], list) \
and not isinstance(view_data[fk][0], tuple) :
view_data[fk] = [(6, 0, view_data[fk])]
action_name = action.get('name')
try:
from xml.dom import minidom

View File

@ -250,8 +250,8 @@ class TinyPoFile(object):
self.logger = logging.getLogger('i18n')
self.buffer = buffer
def warn(self, msg):
self.logger.warning(msg)
def warn(self, msg, *args):
self.logger.warning(msg, *args)
def __iter__(self):
self.buffer.seek(0)
@ -437,7 +437,9 @@ def trans_export(lang, modules, buffer, format, dbname=None):
rows_by_module = {}
for row in rows:
module = row[0]
rows_by_module.setdefault(module, []).append(row)
# first row is the "header", as in csv, it will be popped
rows_by_module.setdefault(module, [['module', 'type', 'name', 'res_id', 'src', ''],])
rows_by_module[module].append(row)
tmpdir = tempfile.mkdtemp()
for mod, modrows in rows_by_module.items():