parent
54346578c8
commit
d7e09b669c
|
@ -2338,11 +2338,42 @@ instance.web.Legend = instance.web.Widget.extend({
|
|||
this.dataset = dataset;
|
||||
this.options = options;
|
||||
},
|
||||
|
||||
prepare_data: function() {
|
||||
var self =this;
|
||||
var def = $.Deferred();
|
||||
if (this.parent.name == 'kanban_state'){
|
||||
var datas = [{ 'name': 'normal', 'legend_name': ' Normal', 'legend': '<img src="/web/static/src/img/icons/gtk-normal.png"/>' },
|
||||
{ 'name': 'blocked', 'legend_name': ' Blocked', 'legend': '<img src="/web/static/src/img/icons/gtk-no.png"/>' },
|
||||
{ 'name': 'done', 'legend_name': ' Done', 'legend': '<img src="/web/static/src/img/icons/gtk-yes.png"/>' }]
|
||||
return def.resolve(datas);
|
||||
}
|
||||
if (this.parent.name == 'priority'){
|
||||
var data = [];
|
||||
var selection = this.parent.field.selection || [];
|
||||
for (var index in selection) {
|
||||
value = {
|
||||
'name': selection[index][0],
|
||||
'legend_name': selection[index][1]
|
||||
}
|
||||
if (selection[index][0] == '0'){
|
||||
value['legend']= '<img src="/web/static/src/img/icons/star-off.png"/>';
|
||||
value['legend_name'] = 'Set the Priority';
|
||||
}else{
|
||||
value['legend']= '<img src="/web/static/src/img/icons/star-on.png"/>';
|
||||
}
|
||||
data.push(value)
|
||||
}
|
||||
return def.resolve(data);
|
||||
}
|
||||
},
|
||||
render_value: function(record_id, data) {
|
||||
var self = this;
|
||||
var content;
|
||||
self.record_id = record_id;
|
||||
var content = QWeb.render("Legend."+ self.parent.name, data);
|
||||
this.prepare_data().then(function (res){
|
||||
data['res'] = res;
|
||||
content = QWeb.render("Legend."+ self.parent.name, data);
|
||||
});
|
||||
if (data.view_mode === 'form')
|
||||
this.parent.$el.html(content);
|
||||
else
|
||||
|
@ -2366,19 +2397,15 @@ instance.web.form.Legend = instance.web.form.FieldChar.extend({
|
|||
this._super(field_manager, node);
|
||||
this.legend = new instance.web.Legend(this, this.view.dataset, py.eval(node.attrs.options));
|
||||
},
|
||||
|
||||
reload_record: function(){
|
||||
this.view.reload();
|
||||
},
|
||||
render_value: function() {
|
||||
var self = this;
|
||||
var legend_field = this.options.legend_field;
|
||||
var legend_value = this.field_manager.fields[legend_field].get_value();
|
||||
self.legend.render_value(this.view.datarecord.id, {
|
||||
'widget': self,
|
||||
'legend_value': legend_value,
|
||||
'view_mode':'form'
|
||||
});
|
||||
});
|
||||
},
|
||||
});
|
||||
instance.web.form.FieldID = instance.web.form.FieldChar.extend({
|
||||
|
|
|
@ -1032,35 +1032,34 @@
|
|||
</span>
|
||||
</t>
|
||||
|
||||
|
||||
<t t-name="Legend.kanban_state_legend">
|
||||
<t t-name="Legend.kanban_state">
|
||||
<span class="btn-group">
|
||||
<t t-foreach="widget.get('value')" t-as="rec">
|
||||
<a class="dropdown-toggle oe_legend" data-toggle="dropdown" href="#" t-if="legend_value === rec.name" t-att-title="rec.description or rec.legend_name" >
|
||||
<t t-raw="rec.body" />
|
||||
<t t-foreach="res" t-as="rec">
|
||||
<a class="dropdown-toggle oe_legend" data-toggle="dropdown" href="#" t-if="widget.get('value') === rec.name" t-att-title="rec.legend_name" >
|
||||
<t t-raw="rec.legend" />
|
||||
</a>
|
||||
</t>
|
||||
<ul class="dropdown-menu with-arrow">
|
||||
<t t-foreach="widget.get('value')" t-as="rec">
|
||||
<t t-if="legend_value !== rec.name">
|
||||
<li class="oe_legend" t-att-data-value="rec.name"><a href="#"><t t-raw="rec.body" /><t t-raw="rec.legend_name" /></a></li>
|
||||
</t>
|
||||
</t>
|
||||
</ul>
|
||||
<ul class="dropdown-menu with-arrow">
|
||||
<t t-foreach="res" t-as="rec">
|
||||
<t t-if="widget.get('value') !== rec.name">
|
||||
<li class="oe_legend" t-att-data-value="rec.name" ><a href="#"><t t-raw="rec.legend" /><t t-raw="rec.legend_name" /></a></li>
|
||||
</t>
|
||||
</t>
|
||||
</ul>
|
||||
</span>
|
||||
</t>
|
||||
<t t-name="Legend.priority_legend">
|
||||
<ul style="list-style: none; padding-left: 5px;">
|
||||
<t t-foreach="widget.get('value')" t-as="test" >
|
||||
<t t-if="legend_value gte test.name and !test_first">
|
||||
<li t-att-data-value="test.name - 1" class="oe_left oe_legend"><a href="#" t-att-title="test.description or test.legend_name"><t t-raw="test.body"/></a></li>
|
||||
<t t-name="Legend.priority">
|
||||
<ul style="list-style: none; padding-left: 2px;">
|
||||
<t t-foreach="res" t-as="test" >
|
||||
<t t-if="widget.get('value') gte test.name and !test_first">
|
||||
<li t-att-data-value="test.name - 1" class="oe_left oe_legend"><a href="#" t-att-title="test.legend_name"><t t-raw="test.legend"/></a></li>
|
||||
</t>
|
||||
</t>
|
||||
</t>
|
||||
<t t-foreach="widget.get('value')" t-as="test" >
|
||||
<t t-if="legend_value lt test.name">
|
||||
<li t-att-data-value="test.name" class="oe_left oe_legend"><a href="#" t-att-title="widget.get('value')[0].description or widget.get('value')[0].legend_name"><t t-raw="widget.get('value')[0].body"/></a></li>
|
||||
<t t-foreach="res" t-as="test" >
|
||||
<t t-if="widget.get('value') lt test.name">
|
||||
<li t-att-data-value="test.name" class="oe_left oe_legend"><a href="#" t-att-title="res[0].legend_name"><t t-raw="res[0].legend"/></a></li>
|
||||
</t>
|
||||
</t>
|
||||
</t>
|
||||
</ul>
|
||||
</t>
|
||||
<t t-name="FieldEmail">
|
||||
|
|
|
@ -1242,12 +1242,9 @@ instance.web_kanban.Legend = instance.web_kanban.AbstractField.extend({
|
|||
},
|
||||
renderElement: function() {
|
||||
var self = this;
|
||||
var legend_field = this.options.legend_field;
|
||||
var legend_field_value = this.parent.record[legend_field].raw_value
|
||||
self.legend.render_value(this.parent.id, {
|
||||
self.legend.render_value(self.parent.id, {
|
||||
'widget': self,
|
||||
'legend_value': legend_field_value,
|
||||
});
|
||||
});
|
||||
},
|
||||
});
|
||||
|
||||
|
|
Loading…
Reference in New Issue