diff --git a/frontend_tests/node_tests/unread.js b/frontend_tests/node_tests/unread.js index 921068cec5..27c7af1913 100644 --- a/frontend_tests/node_tests/unread.js +++ b/frontend_tests/node_tests/unread.js @@ -405,7 +405,7 @@ stream_data.get_stream_id = function () { assert.equal(counts.pm_count.get('999'), 0); }()); -(function test_num_unread_for_person() { +(function test_private_messages() { var alice = { email: 'alice@example.com', user_id: 101, @@ -425,6 +425,7 @@ stream_data.get_stream_id = function () { assert.deepEqual(unread.get_msg_ids_for_person(alice.user_id), []); assert.deepEqual(unread.get_msg_ids_for_person(bob.user_id), []); assert.deepEqual(unread.get_msg_ids_for_person(), []); + assert.deepEqual(unread.get_msg_ids_for_private(), []); var message = { id: 15, @@ -443,6 +444,7 @@ stream_data.get_stream_id = function () { assert.deepEqual(unread.get_msg_ids_for_person(alice.user_id), [message.id]); assert.deepEqual(unread.get_msg_ids_for_person(bob.user_id), []); + assert.deepEqual(unread.get_msg_ids_for_private(), [message.id]); }()); diff --git a/static/js/unread.js b/static/js/unread.js index 0dae80d772..900f4a113e 100644 --- a/static/js/unread.js +++ b/static/js/unread.js @@ -179,7 +179,20 @@ exports.unread_pm_counter = (function () { return bucket.count(); }; - self.get_msg_ids = function (user_ids_string) { + self.get_msg_ids = function () { + var lists = []; + + bucketer.each(function (id_set) { + var members = id_set.members(); + lists.push(members); + }); + + var ids = [].concat.apply([], lists); + + return util.sorted_ids(ids); + }; + + self.get_msg_ids_for_person = function (user_ids_string) { if (!user_ids_string) { return []; } @@ -513,7 +526,11 @@ exports.get_msg_ids_for_topic = function (stream_id, subject) { }; exports.get_msg_ids_for_person = function (user_ids_string) { - return exports.unread_pm_counter.get_msg_ids(user_ids_string); + return exports.unread_pm_counter.get_msg_ids_for_person(user_ids_string); +}; + +exports.get_msg_ids_for_private = function () { + return exports.unread_pm_counter.get_msg_ids(); }; exports.load_server_counts = function () {