[IMP] improves the default order parameter

It is renamed 'default_order' and now supports the usual syntax for
sorting fields: for example 'field1, field2 desc, field3 asc'
This commit is contained in:
Géry Debongnie 2014-06-13 14:55:26 +02:00
parent 44db8772ec
commit cb7450acec
2 changed files with 11 additions and 4 deletions

View File

@ -354,10 +354,13 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
this.sidebar.$el.hide(); this.sidebar.$el.hide();
} }
//Sort //Sort
var default_order = this.fields_view.arch.attrs.order, var default_order = this.fields_view.arch.attrs.default_order,
unsorted = !this.dataset._sort.length; unsorted = !this.dataset._sort.length;
if (unsorted && default_order) { if (unsorted && default_order) {
this.dataset.sort(default_order); _.each(default_order.split(',').reverse(), function (order) {
var split = _.without(order.split(' '), '');
self.dataset.sort(split[0], split[1] === 'desc');
});
} }
if(this.dataset._sort.length){ if(this.dataset._sort.length){

View File

@ -61,13 +61,17 @@ instance.web_kanban.KanbanView = instance.web.View.extend({
$('html').off('click.kanban'); $('html').off('click.kanban');
}, },
load_kanban: function(data) { load_kanban: function(data) {
var self = this;
this.fields_view = data; this.fields_view = data;
// use default order if defined in xml description // use default order if defined in xml description
var default_order = this.fields_view.arch.attrs.order, var default_order = this.fields_view.arch.attrs.default_order,
unsorted = !this.dataset._sort.length; unsorted = !this.dataset._sort.length;
if (unsorted && default_order) { if (unsorted && default_order) {
this.dataset.sort(default_order); _.each(default_order.split(',').reverse(), function (order) {
var split = _.without(order.split(' '), '');
self.dataset.sort(split[0], split[1] === 'desc');
});
} }
this.$el.addClass(this.fields_view.arch.attrs['class']); this.$el.addClass(this.fields_view.arch.attrs['class']);