summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/view_list.js
diff options
context:
space:
mode:
authorChristophe Simonis <chs@openerp.com>2014-03-18 13:40:50 +0100
committerChristophe Simonis <chs@openerp.com>2014-03-18 13:40:50 +0100
commita2f9619e267a45d0959e7a942ba4e520d91fbb94 (patch)
tree3130977e61cfc7ab3afe093716363489ca93cc87 /addons/web/static/src/js/view_list.js
parent788708563133720c2833fdf0f67515940f6d4cd9 (diff)
parent541a5d3f82e6c2422644caff5b793d96954c2e93 (diff)
[MERGE] forward port of branch saas-3 up to revid 3975 chs@openerp.com-20140318115516-sn3laxqseam1oz3f
bzr revid: chs@openerp.com-20140318124050-ul3reev0vvmgqxz8
Diffstat (limited to 'addons/web/static/src/js/view_list.js')
-rw-r--r--addons/web/static/src/js/view_list.js15
1 files changed, 14 insertions, 1 deletions
diff --git a/addons/web/static/src/js/view_list.js b/addons/web/static/src/js/view_list.js
index e01ab29f914..7426c70838c 100644
--- a/addons/web/static/src/js/view_list.js
+++ b/addons/web/static/src/js/view_list.js
@@ -408,6 +408,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;
}
@@ -602,7 +605,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();
});
},