summaryrefslogtreecommitdiffstats
path: root/webapp/components/admin_console/team_users.jsx
diff options
context:
space:
mode:
authorCorey Hulen <corey@hulen.com>2016-05-06 11:28:22 -0700
committerChristopher Speller <crspeller@gmail.com>2016-05-06 14:28:22 -0400
commit6c75662b824491a20a757a5eec59556a866374b5 (patch)
tree2f531a680aaa45bc915d51764eb846bc1b80fa68 /webapp/components/admin_console/team_users.jsx
parent4f799b980fd457e5dc97d2427a154576d7a5eded (diff)
downloadchat-6c75662b824491a20a757a5eec59556a866374b5.tar.gz
chat-6c75662b824491a20a757a5eec59556a866374b5.tar.bz2
chat-6c75662b824491a20a757a5eec59556a866374b5.zip
PLT-2697 Fixing team admins (#2900)
* PLT-2697 Fixing team admins * Fixing eslint error * Fixing loc issues * Fixing func * Fixing func
Diffstat (limited to 'webapp/components/admin_console/team_users.jsx')
-rw-r--r--webapp/components/admin_console/team_users.jsx39
1 files changed, 38 insertions, 1 deletions
diff --git a/webapp/components/admin_console/team_users.jsx b/webapp/components/admin_console/team_users.jsx
index 2b0e6af0a..e41747737 100644
--- a/webapp/components/admin_console/team_users.jsx
+++ b/webapp/components/admin_console/team_users.jsx
@@ -19,10 +19,12 @@ export default class UserList extends React.Component {
this.doPasswordReset = this.doPasswordReset.bind(this);
this.doPasswordResetDismiss = this.doPasswordResetDismiss.bind(this);
this.doPasswordResetSubmit = this.doPasswordResetSubmit.bind(this);
+ this.getTeamMemberForUser = this.getTeamMemberForUser.bind(this);
this.state = {
teamId: props.team.id,
users: null,
+ teamMembers: null,
serverError: null,
showPasswordModal: false,
user: null
@@ -38,6 +40,21 @@ export default class UserList extends React.Component {
}
getTeamProfiles(teamId) {
+ Client.getTeamMembers(
+ teamId,
+ (data) => {
+ this.setState({
+ teamMembers: data
+ });
+ },
+ (err) => {
+ this.setState({
+ teamMembers: null,
+ serverError: err.message
+ });
+ }
+ );
+
Client.getProfilesForTeam(
teamId,
(users) => {
@@ -110,6 +127,22 @@ export default class UserList extends React.Component {
});
}
+ getTeamMemberForUser(userId) {
+ if (this.state.teamMembers) {
+ for (const index in this.state.teamMembers) {
+ if (this.state.teamMembers.hasOwnProperty(index)) {
+ var teamMember = this.state.teamMembers[index];
+
+ if (teamMember.user_id === userId) {
+ return teamMember;
+ }
+ }
+ }
+ }
+
+ return null;
+ }
+
componentWillReceiveProps(newProps) {
this.getTeamProfiles(newProps.team.id);
}
@@ -120,7 +153,7 @@ export default class UserList extends React.Component {
serverError = <div className='form-group has-error'><label className='control-label'>{this.state.serverError}</label></div>;
}
- if (this.state.users == null) {
+ if (this.state.users == null || this.state.teamMembers == null) {
return (
<div className='wrapper--fixed'>
<h3>
@@ -139,10 +172,14 @@ export default class UserList extends React.Component {
}
var memberList = this.state.users.map((user) => {
+ var teamMember = this.getTeamMemberForUser(user.id);
+
return (
<UserItem
+ team={this.props.team}
key={'user_' + user.id}
user={user}
+ teamMember={teamMember}
refreshProfiles={this.getCurrentTeamProfiles}
doPasswordReset={this.doPasswordReset}
/>);