diff --git a/src/views/messages/container.jsx b/src/views/messages/container.jsx
index fbcf4e590..91ea7574c 100644
--- a/src/views/messages/container.jsx
+++ b/src/views/messages/container.jsx
@@ -116,10 +116,20 @@ var Messages = React.createClass({
)
);
},
- filterMessages: function (messages, typesAllowed) {
+ filterMessages: function (messages, typesAllowed, unreadCount) {
var filteredMessages = [];
for (var i in messages) {
- if (typesAllowed.indexOf(messages[i].type) > -1) {
+ // check to see if the position of the message in the list is earlier
+ // than the unread count. If it is, then the message is totally unread.
+ messages[i].unread = false;
+ if (i < unreadCount) messages[i].unread = true;
+
+ if (typesAllowed.length > 0) {
+ if (typesAllowed.indexOf(messages[i].type) > -1) {
+ filteredMessages.push(messages[i]);
+ }
+ } else {
+ // if empty, then we're looking at all messages, so just like add the message
filteredMessages.push(messages[i]);
}
}
@@ -131,10 +141,11 @@ var Messages = React.createClass({
loadMore = false;
}
- var messages = this.props.messages;
- if (this.state.filterValues.length > 0) {
- messages = this.filterMessages(messages, this.state.filterValues);
- }
+ var messages = this.filterMessages(
+ this.props.messages,
+ this.state.filterValues,
+ this.props.numNewMessages
+ );
return(