From 78674ebc36cf9d24309799651c09a7e194d15ea4 Mon Sep 17 00:00:00 2001 From: Bernhard Posselt Date: Wed, 27 Mar 2013 13:47:53 +0100 Subject: star by guid hash and feedid to also star an item if it has been updated in the meantime. read still only works on the current version of the item, that means if an item is updated on the server side and an older version is being read on the server it will not be marked as read --- js/app/services/persistence.coffee | 10 ++++++---- js/public/app.js | 10 ++++++---- js/tests/services/persistenceSpec.coffee | 10 ++++++---- 3 files changed, 18 insertions(+), 12 deletions(-) (limited to 'js') diff --git a/js/app/services/persistence.coffee b/js/app/services/persistence.coffee index 24b371b54..41aa13722 100644 --- a/js/app/services/persistence.coffee +++ b/js/app/services/persistence.coffee @@ -81,25 +81,27 @@ angular.module('News').factory '_Persistence', -> @_request.get 'news_items_starred', params - starItem: (itemId) -> + starItem: (feedId, guidHash) -> ### Stars an item ### params = routeParams: - itemId: itemId + feedId: feedId + guidHash: guidHash @_request.post 'news_items_star', params - unstarItem: (itemId) -> + unstarItem: (feedId, guidHash) -> ### Unstars an item ### params = routeParams: - itemId: itemId + feedId: feedId + guidHash: guidHash @_request.post 'news_items_unstar', params diff --git a/js/public/app.js b/js/public/app.js index e5b6e3cab..06cbb6e3e 100644 --- a/js/public/app.js +++ b/js/public/app.js @@ -1122,7 +1122,7 @@ License along with this library. If not, see . return this._request.get('news_items_starred', params); }; - Persistence.prototype.starItem = function(itemId) { + Persistence.prototype.starItem = function(feedId, guidHash) { /* Stars an item */ @@ -1130,13 +1130,14 @@ License along with this library. If not, see . var params; params = { routeParams: { - itemId: itemId + feedId: feedId, + guidHash: guidHash } }; return this._request.post('news_items_star', params); }; - Persistence.prototype.unstarItem = function(itemId) { + Persistence.prototype.unstarItem = function(feedId, guidHash) { /* Unstars an item */ @@ -1144,7 +1145,8 @@ License along with this library. If not, see . var params; params = { routeParams: { - itemId: itemId + feedId: feedId, + guidHash: guidHash } }; return this._request.post('news_items_unstar', params); diff --git a/js/tests/services/persistenceSpec.coffee b/js/tests/services/persistenceSpec.coffee index 091fcd60c..dc36661a4 100644 --- a/js/tests/services/persistenceSpec.coffee +++ b/js/tests/services/persistenceSpec.coffee @@ -101,10 +101,11 @@ describe '_Persistence', -> it 'send a correct star item request', => params = routeParams: - itemId: 2 + feedId: 2 + guidHash: 'dfdfdf' pers = new @_Persistence(@req, @loading, @config, @active, @$rootScope) - pers.starItem(params.routeParams.itemId) + pers.starItem(params.routeParams.feedId, params.routeParams.guidHash) expect(@req.post).toHaveBeenCalledWith('news_items_star', params) @@ -112,10 +113,11 @@ describe '_Persistence', -> it 'send a correct unstar item request', => params = routeParams: - itemId: 2 + feedId: 2 + guidHash: 'dfdfdf' pers = new @_Persistence(@req, @loading, @config, @active, @$rootScope) - pers.unstarItem(params.routeParams.itemId) + pers.unstarItem(params.routeParams.feedId, params.routeParams.guidHash) expect(@req.post).toHaveBeenCalledWith('news_items_unstar', params) -- cgit v1.2.3