summaryrefslogtreecommitdiffstats
path: root/js/service
diff options
context:
space:
mode:
authorBernhard Posselt <dev@bernhard-posselt.com>2014-05-22 15:09:57 +0200
committerBernhard Posselt <dev@bernhard-posselt.com>2014-05-22 15:09:57 +0200
commit2bb6bc03b5c7c2eb6465d2c05159028ede6c93b4 (patch)
tree4db98c30abef529df257ed37ba293ca028fbfdf2 /js/service
parent7d15bfa996e7661e450070715a96fe8cb2d75a8c (diff)
add autopaging directive
Diffstat (limited to 'js/service')
-rw-r--r--js/service/ItemResource.js33
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);