From 22de79a0d7c0a2a1fdc336b307f24a46b4b9e472 Mon Sep 17 00:00:00 2001 From: Samuel Clay Date: Tue, 14 Jan 2014 12:06:34 -0800 Subject: [PATCH] Counting dupe feeds only once in unread counts. --- media/js/newsblur/models/folders.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/media/js/newsblur/models/folders.js b/media/js/newsblur/models/folders.js index 0ab2ccc27..d7cf232b7 100644 --- a/media/js/newsblur/models/folders.js +++ b/media/js/newsblur/models/folders.js @@ -252,15 +252,17 @@ NEWSBLUR.Collections.Folders = Backbone.Collection.extend({ }); }, - unread_counts: function(sum_total) { + unread_counts: function(sum_total, seen_feeds) { + if (!seen_feeds) seen_feeds = []; var counts = this.reduce(function(counts, item) { - if (item.is_feed()) { + if (item.is_feed() && !_.contains(seen_feeds, item.feed.id)) { var feed_counts = item.feed.unread_counts(); counts['ps'] += feed_counts['ps']; counts['nt'] += feed_counts['nt']; counts['ng'] += feed_counts['ng']; + seen_feeds.push(item.feed.id); } else if (item.is_folder()) { - var folder_counts = item.folders.unread_counts(); + var folder_counts = item.folders.unread_counts(false, seen_feeds); counts['ps'] += folder_counts['ps']; counts['nt'] += folder_counts['nt']; counts['ng'] += folder_counts['ng'];