summaryrefslogtreecommitdiffstats
path: root/web/react/components/member_list_item.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'web/react/components/member_list_item.jsx')
-rw-r--r--web/react/components/member_list_item.jsx142
1 files changed, 0 insertions, 142 deletions
diff --git a/web/react/components/member_list_item.jsx b/web/react/components/member_list_item.jsx
deleted file mode 100644
index 88b98738d..000000000
--- a/web/react/components/member_list_item.jsx
+++ /dev/null
@@ -1,142 +0,0 @@
-// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
-// See License.txt for license information.
-
-import UserStore from '../stores/user_store.jsx';
-import * as Utils from '../utils/utils.jsx';
-
-import {FormattedMessage} from 'mm-intl';
-
-export default class MemberListItem extends React.Component {
- constructor(props) {
- super(props);
-
- this.handleInvite = this.handleInvite.bind(this);
- this.handleRemove = this.handleRemove.bind(this);
- this.handleMakeAdmin = this.handleMakeAdmin.bind(this);
- }
- handleInvite(e) {
- e.preventDefault();
- this.props.handleInvite(this.props.member.id);
- }
- handleRemove(e) {
- e.preventDefault();
- this.props.handleRemove(this.props.member.id);
- }
- handleMakeAdmin(e) {
- e.preventDefault();
- this.props.handleMakeAdmin(this.props.member.id);
- }
- render() {
- var member = this.props.member;
- var isAdmin = this.props.isAdmin;
- var isMemberAdmin = Utils.isAdmin(member.roles);
- var timestamp = UserStore.getCurrentUser().update_at;
-
- var invite;
- if (this.props.handleInvite) {
- invite = (
- <a
- onClick={this.handleInvite}
- className='btn btn-sm btn-primary'
- >
- <i className='glyphicon glyphicon-envelope'/>
- <FormattedMessage
- id='member_item.add'
- defaultMessage=' Add'
- />
- </a>
- );
- } else if (isAdmin && !isMemberAdmin && (member.id !== UserStore.getCurrentId())) {
- var self = this;
-
- let makeAdminOption = null;
- if (this.props.handleMakeAdmin) {
- makeAdminOption = (
- <li role='presentation'>
- <a
- href=''
- role='menuitem'
- onClick={self.handleMakeAdmin}
- >
- <FormattedMessage
- id='member_item.makeAdmin'
- defaultMessage='Make Admin'
- />
- </a>
- </li>);
- }
-
- let handleRemoveOption = null;
- if (this.props.handleRemove) {
- handleRemoveOption = (
- <li role='presentation'>
- <a
- href=''
- role='menuitem'
- onClick={self.handleRemove}
- >
- <FormattedMessage
- id='member_item.removeMember'
- defaultMessage='Remove Member'
- />
- </a>
- </li>);
- }
-
- invite = (
- <div className='dropdown member-drop'>
- <a
- href='#'
- className='dropdown-toggle theme'
- type='button'
- data-toggle='dropdown'
- aria-expanded='true'
- >
- <span className='fa fa-pencil'></span>
- <span className='text-capitalize'>
- {member.roles ||
- <FormattedMessage
- id='member_item.member'
- defaultMessage='Member'
- />
- }
- </span>
- </a>
- <ul
- className='dropdown-menu member-menu'
- role='menu'
- >
- {makeAdminOption}
- {handleRemoveOption}
- </ul>
- </div>
- );
- } else {
- invite = (<div className='member-role text-capitalize'><span className='fa fa-pencil hidden'></span>{member.roles || <FormattedMessage id='member_item.member'/>}</div>);
- }
-
- return (
- <tr>
- <td className='direct-channel'>
- <img
- className='profile-img pull-left'
- src={'/api/v1/users/' + member.id + '/image?time=' + timestamp + '&' + Utils.getSessionIndex()}
- height='36'
- width='36'
- />
- <div className='more-name'>{Utils.displayUsername(member.id)}</div>
- <div className='more-description'>{member.email}</div>
- </td>
- <td className='td--action lg'>{invite}</td>
- </tr>
- );
- }
-}
-
-MemberListItem.propTypes = {
- handleInvite: React.PropTypes.func,
- handleRemove: React.PropTypes.func,
- handleMakeAdmin: React.PropTypes.func,
- member: React.PropTypes.object,
- isAdmin: React.PropTypes.bool
-};