diff options
author | Bernhard Posselt <nukeawhale@gmail.com> | 2013-03-25 21:50:49 +0100 |
---|---|---|
committer | Bernhard Posselt <nukeawhale@gmail.com> | 2013-03-25 21:50:49 +0100 |
commit | 0430a6ca38545463d7eea070204d77bddb447437 (patch) | |
tree | 8a0b9dcbc54aab0b327f7b794d2d74861c26d019 /js/app/controllers/feedcontroller.coffee | |
parent | 7ade1165ddd0aa2d650ea28ae2f38a412375f9cc (diff) |
added more feedcontroller methods
Diffstat (limited to 'js/app/controllers/feedcontroller.coffee')
-rw-r--r-- | js/app/controllers/feedcontroller.coffee | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/js/app/controllers/feedcontroller.coffee b/js/app/controllers/feedcontroller.coffee index ddd35d2f8..2feec2a1c 100644 --- a/js/app/controllers/feedcontroller.coffee +++ b/js/app/controllers/feedcontroller.coffee @@ -81,6 +81,7 @@ angular.module('News').factory '_FeedController', -> getUnreadCount: (type, id) -> + # TODO: use polymorphism instead of switches switch type when @_feedType.Subscriptions count = @_feedModel.getUnreadCount() @@ -98,6 +99,7 @@ angular.module('News').factory '_FeedController', -> loadFeed: (type, id) -> + # TODO: use polymorphism instead of switches if type != @_active.getType() or id != @_active.getId() @_itemModel.clear() @_persistence.getItems(type, id, 0) @@ -112,9 +114,31 @@ angular.module('News').factory '_FeedController', -> delete: (type, id) -> + # TODO: use polymorphism instead of switches + switch type + when @_feedType.Feed + count = @_feedModel.removeById(id) + @_persistence.deleteFeed(id) + when @_feedType.Folder + count = @_folderModel.removeById(id) + @_persistence.deleteFolder(id) markAllRead: (type, id) -> + # TODO: use polymorphism instead of switches + switch type + when @_feedType.Subscriptions + for feed in @_feedModel.getAll() + @markAllRead(@_feedType.Feed, feed.id) + when @_feedType.Feed + feed = @_feedModel.getById(id) + if angular.isDefined(feed) + feed.unreadCount = 0 + highestItemId = @_itemModel.getHighestId() + @_persistence.setFeedRead(id, highestItemId) + when @_feedType.Folder + for feed in @_feedModel.getAllOfFolder(id) + @markAllRead(@_feedType.Feed, feed.id) getFeedsOfFolder: (folderId) -> |