diff --git a/addons/web_kanban/static/src/js/kanban_record.js b/addons/web_kanban/static/src/js/kanban_record.js index 0d1816d660f..72df38bf761 100644 --- a/addons/web_kanban/static/src/js/kanban_record.js +++ b/addons/web_kanban/static/src/js/kanban_record.js @@ -78,9 +78,24 @@ var KanbanRecord = Widget.extend({ var widget = new Widget(self, field, $field); widget.replace($field); self.sub_widgets.push(widget); + self._set_field_display(widget, field); }); }, + _set_field_display: function(widget, field) { + // attribute display + if (field.__attrs.display === 'right') { + widget.$el.addClass('pull-right'); + } else if (field.__attrs.display === 'full') { + widget.$el.addClass('o_text_block'); + } + + // attribute bold + if (field.__attrs.bold) { + widget.$el.addClass('o_text_bold'); + } + }, + start: function() { var self = this; this.add_widgets(); diff --git a/addons/web_kanban/static/src/js/kanban_view.js b/addons/web_kanban/static/src/js/kanban_view.js index 7cce7617da9..07aa116c634 100644 --- a/addons/web_kanban/static/src/js/kanban_view.js +++ b/addons/web_kanban/static/src/js/kanban_view.js @@ -812,20 +812,26 @@ function transform_qweb_template (node, fvg, many2manys) { } else if (fields_registry.contains(ftype)) { // do nothing, the kanban record will handle it } else { - if (node.attrs.bold) { - node.tag = 'strong'; - var children_node = { - attrs: {}, - children: [], - tag: qweb.prefix, - }; - children_node.attrs[qweb.prefix + '-esc'] = 'record.' + node.attrs.name + '.value'; - node.children.push(children_node); - } else { - node.tag = qweb.prefix; - node.attrs[qweb.prefix + '-esc'] = 'record.' + node.attrs.name + '.value'; - } + node.tag = 'span'; + var child_node = { + attrs: {}, + children: [], + tag: qweb.prefix, + }; + child_node.attrs[qweb.prefix + '-esc'] = 'record.' + node.attrs.name + '.value'; + node.children.push(child_node); + // set class according to field attribute + var child_classes = []; + if (node.attrs.display === 'right') { + child_classes.push('pull-right'); + } else if (node.attrs.display === 'full') { + child_classes.push('o_text_block'); + } + if (node.attrs.bold) { + child_classes.push('o_text_bold'); + } + node.attrs['class'] = child_classes.join(' '); } break; case 'button': diff --git a/addons/web_kanban/static/src/less/kanban_view.less b/addons/web_kanban/static/src/less/kanban_view.less index 0640fe9f3e3..bc4166c7df4 100644 --- a/addons/web_kanban/static/src/less/kanban_view.less +++ b/addons/web_kanban/static/src/less/kanban_view.less @@ -130,6 +130,12 @@ color: #A61300; font-weight: bold; } + .o_text_bold { + font-weight: bold; + } + .o_text_block { + display: block; + } } .o_kanban_quick_create {