summaryrefslogtreecommitdiffstats
path: root/web/react/components/team_members_modal.jsx
diff options
context:
space:
mode:
authorhmhealey <harrisonmhealey@gmail.com>2015-11-21 08:53:45 -0500
committerhmhealey <harrisonmhealey@gmail.com>2015-11-23 15:52:44 -0500
commitafdef124c8b76292ac3b8431a0c6137457d998e0 (patch)
tree3117d7930f47078392bebc9d54a0a522fe84f039 /web/react/components/team_members_modal.jsx
parent6ab7df3335d414ecf864972c817e3b37b3b01abf (diff)
downloadchat-afdef124c8b76292ac3b8431a0c6137457d998e0.tar.gz
chat-afdef124c8b76292ac3b8431a0c6137457d998e0.tar.bz2
chat-afdef124c8b76292ac3b8431a0c6137457d998e0.zip
Converted TeamMembers (now called TeamMembersModal) to React-Bootstrap
Diffstat (limited to 'web/react/components/team_members_modal.jsx')
-rw-r--r--web/react/components/team_members_modal.jsx69
1 files changed, 69 insertions, 0 deletions
diff --git a/web/react/components/team_members_modal.jsx b/web/react/components/team_members_modal.jsx
new file mode 100644
index 000000000..0a30a2202
--- /dev/null
+++ b/web/react/components/team_members_modal.jsx
@@ -0,0 +1,69 @@
+// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
+// See License.txt for license information.
+
+import MemberListTeam from './member_list_team.jsx';
+import TeamStore from '../stores/team_store.jsx';
+
+const Modal = ReactBootstrap.Modal;
+
+export default class TeamMembersModal extends React.Component {
+ constructor(props) {
+ super(props);
+
+ this.onShow = this.onShow.bind(this);
+ }
+
+ componentDidMount() {
+ if (this.props.show) {
+ this.onShow();
+ }
+ }
+
+ componentDidUpdate(prevProps) {
+ if (this.props.show && !prevProps.show) {
+ this.onShow();
+ }
+ }
+
+ onShow() {
+ $(ReactDOM.findDOMNode(this.refs.modalBody)).css('max-height', $(window).height() - 300);
+ if ($(window).width() > 768) {
+ $(ReactDOM.findDOMNode(this.refs.modalBody)).perfectScrollbar();
+ }
+ }
+
+ render() {
+ const team = TeamStore.getCurrent();
+
+ return (
+ <Modal
+ dialogClassName='team-members-modal'
+ show={this.props.show}
+ onHide={this.props.onHide}
+ >
+ <Modal.Header closeButton={true}>
+ {team.display_name + ' Members'}
+ </Modal.Header>
+ <Modal.Body ref='modalBody'>
+ <div className='team-member-list'>
+ <MemberListTeam />
+ </div>
+ </Modal.Body>
+ <Modal.Footer>
+ <button
+ type='button'
+ className='btn btn-default'
+ onClick={this.props.onHide}
+ >
+ {'Close'}
+ </button>
+ </Modal.Footer>
+ </Modal>
+ );
+ }
+}
+
+TeamMembersModal.propTypes = {
+ show: React.PropTypes.bool.isRequired,
+ onHide: React.PropTypes.func.isRequired
+};