summaryrefslogtreecommitdiffstats
path: root/web/react/components/more_direct_channels.jsx
diff options
context:
space:
mode:
authorReed Garmsen <rgarmsen2295@gmail.com>2015-08-14 17:55:30 -0700
committerReed Garmsen <rgarmsen2295@gmail.com>2015-08-18 08:33:12 -0700
commit56eeb2f6efd04a8ff7b9f6aec18cda5089db1b28 (patch)
tree01828fb1ae863eb38e582c2ba25d4f3d03e74c17 /web/react/components/more_direct_channels.jsx
parente149bc6212218dd8a3d6e108eb112b15dcdb42bd (diff)
downloadchat-56eeb2f6efd04a8ff7b9f6aec18cda5089db1b28.tar.gz
chat-56eeb2f6efd04a8ff7b9f6aec18cda5089db1b28.tar.bz2
chat-56eeb2f6efd04a8ff7b9f6aec18cda5089db1b28.zip
Prepatory cosmetic refactoring of more_direct_channels.jsx
Diffstat (limited to 'web/react/components/more_direct_channels.jsx')
-rw-r--r--web/react/components/more_direct_channels.jsx66
1 files changed, 38 insertions, 28 deletions
diff --git a/web/react/components/more_direct_channels.jsx b/web/react/components/more_direct_channels.jsx
index 901cd228f..65bf2d988 100644
--- a/web/react/components/more_direct_channels.jsx
+++ b/web/react/components/more_direct_channels.jsx
@@ -6,64 +6,74 @@ var TeamStore = require('../stores/team_store.jsx');
var utils = require('../utils/utils.jsx');
module.exports = React.createClass({
+ displayName: 'MoreDirectChannels',
componentDidMount: function() {
var self = this;
- $(this.refs.modal.getDOMNode()).on('show.bs.modal', function(e) {
+ $(this.refs.modal.getDOMNode()).on('show.bs.modal', function showModal(e) {
var button = e.relatedTarget;
- self.setState({ channels: $(button).data('channels') });
+ self.setState({channels: $(button).data('channels')});
});
},
getInitialState: function() {
- return { channels: [] };
+ return {channels: []};
},
render: function() {
var self = this;
- var directMessageItems = this.state.channels.map(function(channel) {
- var badge = "";
- var titleClass = ""
+ var directMessageItems = this.state.channels.map(function mapActivityToChannel(channel) {
+ var badge = '';
+ var titleClass = '';
+ var active = '';
+ var handleClick = null;
if (!channel.fake) {
- var active = channel.id === ChannelStore.getCurrentId() ? "active" : "";
+ if (channel.id === ChannelStore.getCurrentId()) {
+ active = 'active';
+ }
if (channel.unread) {
- badge = <span className="badge pull-right small">{channel.unread}</span>;
- badgesActive = true;
- titleClass = "unread-title"
+ badge = <span className='badge pull-right small'>{channel.unread}</span>;
+ titleClass = 'unread-title';
}
+
+ handleClick = function clickHandler(e) {
+ e.preventDefault();
+ utils.switchChannel(channel, channel.teammate_username);
+ $(self.refs.modal.getDOMNode()).modal('hide');
+ };
+
return (
- <li key={channel.name} className={active}><a className={"sidebar-channel " + titleClass} href="#" onClick={function(e){e.preventDefault(); utils.switchChannel(channel, channel.teammate_username); $(self.refs.modal.getDOMNode()).modal('hide')}}>{badge}{channel.display_name}</a></li>
- );
- } else {
- return (
- <li key={channel.name} className={active}><a className={"sidebar-channel " + titleClass} href={TeamStore.getCurrentTeamUrl() + "/channels/"+channel.name}>{badge}{channel.display_name}</a></li>
+ <li key={channel.name} className={active}><a className={'sidebar-channel ' + titleClass} href='#' onClick={handleClick}>{badge}{channel.display_name}</a></li>
);
}
+
+ return (
+ <li key={channel.name} className={active}><a className={'sidebar-channel ' + titleClass} href={TeamStore.getCurrentTeamUrl() + '/channels/' + channel.name}>{badge}{channel.display_name}</a></li>
+ );
});
return (
- <div className="modal fade" id="more_direct_channels" ref="modal" tabIndex="-1" role="dialog" aria-hidden="true">
- <div className="modal-dialog">
- <div className="modal-content">
- <div className="modal-header">
- <button type="button" className="close" data-dismiss="modal">
- <span aria-hidden="true">&times;</span>
- <span className="sr-only">Close</span>
+ <div className='modal fade' id='more_direct_channels' ref='modal' tabIndex='-1' role='dialog' aria-hidden='true'>
+ <div className='modal-dialog'>
+ <div className='modal-content'>
+ <div className='modal-header'>
+ <button type='button' className='close' data-dismiss='modal'>
+ <span aria-hidden='true'>&times;</span>
+ <span className='sr-only'>Close</span>
</button>
- <h4 className="modal-title">More Private Messages</h4>
+ <h4 className='modal-title'>More Private Messages</h4>
</div>
- <div className="modal-body">
- <ul className="nav nav-pills nav-stacked">
+ <div className='modal-body'>
+ <ul className='nav nav-pills nav-stacked'>
{directMessageItems}
</ul>
</div>
- <div className="modal-footer">
- <button type="button" className="btn btn-default" data-dismiss="modal">Close</button>
+ <div className='modal-footer'>
+ <button type='button' className='btn btn-default' data-dismiss='modal'>Close</button>
</div>
</div>
</div>
</div>
-
);
}
});