diff options
author | Bernhard Posselt <dev@bernhard-posselt.com> | 2014-05-22 15:09:57 +0200 |
---|---|---|
committer | Bernhard Posselt <dev@bernhard-posselt.com> | 2014-05-22 15:09:57 +0200 |
commit | 2bb6bc03b5c7c2eb6465d2c05159028ede6c93b4 (patch) | |
tree | 4db98c30abef529df257ed37ba293ca028fbfdf2 /js/service | |
parent | 7d15bfa996e7661e450070715a96fe8cb2d75a8c (diff) |
add autopaging directive
Diffstat (limited to 'js/service')
-rw-r--r-- | js/service/ItemResource.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/js/service/ItemResource.js b/js/service/ItemResource.js index dc74f637a..67a6d23e6 100644 --- a/js/service/ItemResource.js +++ b/js/service/ItemResource.js @@ -16,6 +16,23 @@ app.factory('ItemResource', (Resource, $http, BASE_URL) => { constructor ($http, BASE_URL) { super($http, BASE_URL); this.starredCount = 0; + this.highestId = 0; + this.lowestId = 0; + } + + + add (obj) { + let id = obj[this.id]; + + if (this.highestId < id) { + this.highestId = id; + } + + if (this.lowestId === 0 || this.lowestId > id) { + this.lowestId = id; + } + + super.add(obj); } @@ -95,12 +112,28 @@ app.factory('ItemResource', (Resource, $http, BASE_URL) => { } + getHighestId () { + return this.highestId; + } + + + getLowestId () { + return this.lowestId; + } + + keepUnread (itemId) { this.get(itemId).keepUnread = true; return this.read(itemId, false); } + clear () { + this.highestId = 0; + this.lowestId = 0; + super.clear(); + } + } return new ItemResource($http, BASE_URL); |