From 426757ad920fe7736f7ce23e02bbeb17c846e79b Mon Sep 17 00:00:00 2001 From: Xavier Morel Date: Tue, 8 Oct 2013 14:04:56 +0200 Subject: [PATCH] [ADD] linked image fields bzr revid: xmo@openerp.com-20131008120456-r8tqd5iyq1zfsdvi --- addons/website/models/ir_qweb.py | 27 ++++++++++++++++++++++ addons/website_sale/views/website_sale.xml | 17 +++++++++----- 2 files changed, 38 insertions(+), 6 deletions(-) diff --git a/addons/website/models/ir_qweb.py b/addons/website/models/ir_qweb.py index fcfd3861c2c..e2472df9bb3 100644 --- a/addons/website/models/ir_qweb.py +++ b/addons/website/models/ir_qweb.py @@ -8,6 +8,8 @@ Also, adds methods to convert values back to openerp models. import itertools +import werkzeug.utils + from openerp.osv import orm, fields class QWeb(orm.AbstractModel): @@ -56,9 +58,34 @@ class HTML(orm.AbstractModel): _inherit = ['website.qweb.field', 'ir.qweb.field.html'] class Image(orm.AbstractModel): + """ + Widget options: + + ``class`` + set as attribute on the generated tag + """ _name = 'website.qweb.field.image' _inherit = ['website.qweb.field', 'ir.qweb.field.image'] + def to_html(self, cr, uid, field_name, record, options, + source_element, t_att, g_att, qweb_context): + assert source_element.nodeName != 'img',\ + "Oddly enough, the root tag of an image field can not be img. " \ + "That is because the image goes into the tag, or it gets the " \ + "hose again." + + return super(Image, self).to_html( + cr, uid, field_name, record, options, + source_element, t_att, g_att, qweb_context) + + def record_to_html(self, cr, uid, field_name, record, column, options=None): + cls = '' + if 'class' in options: + cls = ' class="%s"' % werkzeug.utils.escape(options['class']) + + return '' % ( + cls, record._model._name, field_name, record.id) + class Currency(orm.AbstractModel): _name = 'website.qweb.field.currency' _inherit = ['website.qweb.field', 'ir.qweb.field.currency'] diff --git a/addons/website_sale/views/website_sale.xml b/addons/website_sale/views/website_sale.xml index 1c096ecd3de..03b786ece08 100644 --- a/addons/website_sale/views/website_sale.xml +++ b/addons/website_sale/views/website_sale.xml @@ -124,7 +124,7 @@ @@ -328,7 +328,7 @@
- +

Product Name

@@ -381,7 +381,7 @@