[REM] web_kanban: removed subtitles (aggregates).

Those were not very usefull, sometimes wrong (for example on tasks) and
slow to compute. Using pivot tables allows to have all required statistics
in a much nicer way.

Courtesy of RD India: Mohammed Shekha (msh@odoo.com)
Reviewed by Use Merge: Thibault Delavallée (tde@odoo.com)
This commit is contained in:
Hitesh Trivedi
2015-01-12 17:07:31 +01:00
committed by Thibault Delavallée
parent f8243ffc84
commit 6c4f2ee33c
6 changed files with 7 additions and 41 deletions
+1 -1
View File
@@ -290,7 +290,7 @@
<field name="stage_id" options='{"group_by_tooltip": {"requirements": "Description", "legend_priority": "Use of stars"}}'/>
<field name="color"/>
<field name="priority"/>
<field name="planned_revenue" sum="Expected Revenues"/>
<field name="planned_revenue"/>
<field name="user_email"/>
<field name="user_id"/>
<field name="partner_address_email"/>
+1 -1
View File
@@ -506,7 +506,7 @@
<field name="user_email"/>
<field name="description"/>
<field name="sequence"/>
<field name="remaining_hours" sum="Remaining Time" groups="project.group_time_work_estimation_tasks"/>
<field name="remaining_hours" groups="project.group_time_work_estimation_tasks"/>
<field name="date_deadline"/>
<field name="message_summary"/>
<field name="categ_ids"/>
+1 -5
View File
@@ -159,11 +159,7 @@
.openerp .oe_kanban_view.oe_kanban_grouped .oe_kanban_column, .openerp .oe_kanban_view.oe_kanban_grouped .oe_kanban_column_cards {
height: 100%;
}
.openerp .oe_kanban_view .oe_kanban_aggregates {
padding: 0;
margin: 0px;
}
.openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_group_title, .openerp .oe_kanban_view .oe_kanban_group_folded.oe_kanban_column *, .openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_aggregates, .openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_add {
.openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_group_title, .openerp .oe_kanban_view .oe_kanban_group_folded.oe_kanban_column *, .openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_add {
display: none;
}
.openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_group_title_vertical, .openerp .oe_kanban_view .oe_kanban_group_folded .oe_kanban_group_length {
+1 -4
View File
@@ -180,11 +180,8 @@
&.oe_kanban_grouped
.oe_kanban_column, .oe_kanban_column_cards
height: 100%
.oe_kanban_aggregates
padding: 0
margin: 0px
.oe_kanban_group_folded
.oe_kanban_group_title, &.oe_kanban_column *, .oe_kanban_aggregates, .oe_kanban_add
.oe_kanban_group_title, &.oe_kanban_column *, .oe_kanban_add
display: none
.oe_kanban_group_title_vertical, .oe_kanban_group_length
display: block
+3 -25
View File
@@ -33,8 +33,6 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
records : {}
};
this.groups = [];
this.aggregates = {};
this.group_operators = ['avg', 'max', 'min', 'sum', 'count'];
this.qweb = new QWeb2.Engine();
this.qweb.debug = instance.session.debug;
this.qweb.default_dict = _.clone(QWeb.default_dict);
@@ -101,9 +99,7 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
return false;
return this._super(action);
},
/* add_qweb_template
* select the nodes into the xml and send to extract_aggregates the nodes with TagName="field"
*/
/* add_qweb_template */
add_qweb_template: function() {
for (var i=0, ii=this.fields_view.arch.children.length; i < ii; i++) {
var child = this.fields_view.arch.children[i];
@@ -111,19 +107,6 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
this.transform_qweb_template(child);
this.qweb.add_template(instance.web.json_node_to_xml(child));
break;
} else if (child.tag === 'field') {
this.extract_aggregates(child);
}
}
},
/* extract_aggregates
* extract the agggregates from the nodes (TagName="field")
*/
extract_aggregates: function(node) {
for (var j = 0, jj = this.group_operators.length; j < jj; j++) {
if (node.attrs[this.group_operators[j]]) {
this.aggregates[node.attrs.name] = node.attrs[this.group_operators[j]];
break;
}
}
},
@@ -228,7 +211,6 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
},
value: new_record[0],
length: 0,
aggregates: {},
};
var new_group = new instance.web_kanban.KanbanGroup(self, [], datagroup, dataset);
self.do_add_groups([new_group]).done(function() {
@@ -248,7 +230,7 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
self.grouped_by_m2o = (self.group_by_field.type === 'many2one');
self.$buttons.find('.oe_alternative').toggle(self.grouped_by_m2o);
self.$el.toggleClass('oe_kanban_grouped_by_m2o', self.grouped_by_m2o);
var grouping_fields = self.group_by ? [self.group_by].concat(_.keys(self.aggregates)) : undefined;
var grouping_fields = self.group_by ? [self.group_by] : undefined;
if (!_.isEmpty(grouping_fields)) {
// ensure group_by fields are read.
self.fields_keys = _.unique(self.fields_keys.concat(grouping_fields));
@@ -509,7 +491,7 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
on_record_moved : function(record, old_group, old_index, new_group, new_index) {
var self = this;
record.$el.find('[title]').tooltip('destroy');
$(old_group.$el).add(new_group.$el).find('.oe_kanban_aggregates, .oe_kanban_group_length').hide();
$(old_group.$el).add(new_group.$el).find('.oe_kanban_group_length').hide();
if (old_group === new_group) {
new_group.records.splice(old_index, 1);
new_group.records.splice(new_index, 0, record);
@@ -628,7 +610,6 @@ instance.web_kanban.KanbanGroup = instance.web.Widget.extend({
this.group = group;
this.dataset = dataset;
this.dataset_offset = 0;
this.aggregates = {};
this.value = this.title = this.values = null;
if (this.group) {
this.values = group.values;
@@ -644,9 +625,6 @@ instance.web_kanban.KanbanGroup = instance.web.Widget.extend({
this.title = instance.web.format_value(group.get('value'), field, false);
} catch(e) {}
}
_.each(this.view.aggregates, function(value, key) {
self.aggregates[value] = instance.web.format_value(group.get('aggregates')[key], {type: 'float'});
});
}
if (this.title === false) {
@@ -57,11 +57,6 @@
</div>
<div class="oe_kanban_group_title_text" t-att-title="widget.title"><t t-esc="widget.title"/></div>
</div>
<ul t-if="widget.group.get('length') &gt; 0" class="oe_kanban_aggregates">
<li t-foreach="widget.aggregates" t-as="aggregate">
<span><t t-esc="aggregate"/>:</span> <t t-esc="aggregate_value"/>
</li>
</ul>
</div>
<span t-if="widget.title" class="oe_kanban_group_title_vertical">
<t t-esc="widget.title"/>