From 28e0a1771cb2a56308b2d83d0269af2da16198e6 Mon Sep 17 00:00:00 2001 From: Denis Ledoux Date: Thu, 21 Apr 2016 18:33:10 +0200 Subject: [PATCH] [FIX] ir_qweb: regression of 8395f0d217e16df18fcc6f4309fe74b0dd8d50a2 This revision corrects a regression introduced by 8395f0d217e16df18fcc6f4309fe74b0dd8d50a2: the possibility to call `ir.qweb.field.datetime`.`value_to_html` with a datetime string directly, instead of calling `ir.qweb.field.datetime`.`record_to_html` (which call `value_to_html` as well). opw-675427 --- openerp/addons/base/ir/ir_qweb.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/openerp/addons/base/ir/ir_qweb.py b/openerp/addons/base/ir/ir_qweb.py index a26ba5fca6b..a54dc44eba5 100644 --- a/openerp/addons/base/ir/ir_qweb.py +++ b/openerp/addons/base/ir/ir_qweb.py @@ -712,6 +712,12 @@ class DateTimeConverter(osv.AbstractModel): lang = self.user_lang(cr, uid, context=context) locale = babel.Locale.parse(lang.code) + if isinstance(value, basestring): + value = datetime.datetime.strptime( + value, openerp.tools.DEFAULT_SERVER_DATETIME_FORMAT) + value = fields.datetime.context_timestamp( + cr, uid, timestamp=value, context=context) + if options and 'format' in options: pattern = options['format'] else: @@ -724,15 +730,10 @@ class DateTimeConverter(osv.AbstractModel): return babel.dates.format_datetime(value, format=pattern, locale=locale) def record_to_html(self, cr, uid, field_name, record, options, context=None): - value = record[field_name] - if isinstance(value, basestring): - value = datetime.datetime.strptime( - value, openerp.tools.DEFAULT_SERVER_DATETIME_FORMAT) - value = fields.datetime.context_timestamp( - cr, uid, timestamp=value, context=record.env.context) field = field = record._fields[field_name] + value = record[field_name] return self.value_to_html( - cr, uid, value, field, options=options, context=context) + cr, uid, value, field, options=options, context=dict(context, **record.env.context)) class TextConverter(osv.AbstractModel): _name = 'ir.qweb.field.text'