diff options
Diffstat (limited to 'web/react/components/notify_counts.jsx')
-rw-r--r-- | web/react/components/notify_counts.jsx | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/web/react/components/notify_counts.jsx b/web/react/components/notify_counts.jsx deleted file mode 100644 index 19b81556b..000000000 --- a/web/react/components/notify_counts.jsx +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved. -// See License.txt for license information. - -import * as utils from '../utils/utils.jsx'; -import ChannelStore from '../stores/channel_store.jsx'; - -function getCountsStateFromStores() { - var count = 0; - var channels = ChannelStore.getAll(); - var members = ChannelStore.getAllMembers(); - - channels.forEach(function setChannelInfo(channel) { - var channelMember = members[channel.id]; - if (channel.type === 'D') { - count += channel.total_msg_count - channelMember.msg_count; - } else if (channelMember.mention_count > 0) { - count += channelMember.mention_count; - } else if (channelMember.notify_props.mark_unread !== 'mention' && channel.total_msg_count - channelMember.msg_count > 0) { - count += 1; - } - }); - - return {count: count}; -} - -export default class NotifyCounts extends React.Component { - constructor(props) { - super(props); - - this.onListenerChange = this.onListenerChange.bind(this); - - this.state = getCountsStateFromStores(); - } - componentDidMount() { - ChannelStore.addChangeListener(this.onListenerChange); - } - componentWillUnmount() { - ChannelStore.removeChangeListener(this.onListenerChange); - } - onListenerChange() { - var newState = getCountsStateFromStores(); - if (!utils.areObjectsEqual(newState, this.state)) { - this.setState(newState); - } - } - render() { - if (this.state.count) { - return <span className='badge badge-notify'>{this.state.count}</span>; - } - return null; - } -} |