[MERGE] [FIX] view list: pagination problem when delete records in list view
When delete a record, correctly display the number of remaining items displayed (eg: 1-79 of 99) When no more items in a page, force switch to previous page When no more pager, reload the content to display potential items in next page bzr revid: mat@openerp.com-20140303164114-pzeuu9hxvq17lx02
This commit is contained in:
commit
a1a5bc6c06
|
@ -403,6 +403,9 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
|||
if (total) {
|
||||
var range_start = this.page * limit + 1;
|
||||
var range_stop = range_start - 1 + limit;
|
||||
if (this.records.length) {
|
||||
range_stop = range_start - 1 + this.records.length;
|
||||
}
|
||||
if (range_stop > total) {
|
||||
range_stop = total;
|
||||
}
|
||||
|
@ -597,7 +600,17 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
|||
_(ids).each(function (id) {
|
||||
self.records.remove(self.records.get(id));
|
||||
});
|
||||
self.configure_pager(self.dataset);
|
||||
if (self.records.length === 0 && self.dataset.size() > 0) {
|
||||
//Trigger previous manually to navigate to previous page,
|
||||
//If all records are deleted on current page.
|
||||
self.$pager.find('ul li:first a').trigger('click');
|
||||
} else if (self.dataset.size() == self.limit()) {
|
||||
//Reload listview to update current page with next page records
|
||||
//because pager going to be hidden if dataset.size == limit
|
||||
self.reload();
|
||||
} else {
|
||||
self.configure_pager(self.dataset);
|
||||
}
|
||||
self.compute_aggregates();
|
||||
});
|
||||
},
|
||||
|
|
Loading…
Reference in New Issue