diff options
-rw-r--r-- | webapp/actions/user_actions.jsx | 19 | ||||
-rw-r--r-- | webapp/components/admin_console/admin_team_members_dropdown.jsx | 13 |
2 files changed, 24 insertions, 8 deletions
diff --git a/webapp/actions/user_actions.jsx b/webapp/actions/user_actions.jsx index fefca79f7..ce2246d30 100644 --- a/webapp/actions/user_actions.jsx +++ b/webapp/actions/user_actions.jsx @@ -352,3 +352,22 @@ export function generateMfaSecret(success, error) { } ); } + +export function updateUserRoles(userId, newRoles, success, error) { + Client.updateUserRoles( + userId, + newRoles, + () => { + AsyncClient.getUser(this.props.user.id); + + if (success) { + success(); + } + }, + (err) => { + if (error) { + error(err); + } + } + ); +} diff --git a/webapp/components/admin_console/admin_team_members_dropdown.jsx b/webapp/components/admin_console/admin_team_members_dropdown.jsx index 0331e6c4e..028effe66 100644 --- a/webapp/components/admin_console/admin_team_members_dropdown.jsx +++ b/webapp/components/admin_console/admin_team_members_dropdown.jsx @@ -10,6 +10,7 @@ import Client from 'client/web_client.jsx'; import Constants from 'utils/constants.jsx'; import * as Utils from 'utils/utils.jsx'; import * as AsyncClient from 'utils/async_client.jsx'; +import {updateUserRoles} from 'actions/user_actions.jsx'; import {FormattedMessage} from 'react-intl'; @@ -42,12 +43,10 @@ export default class AdminTeamMembersDropdown extends React.Component { } doMakeMember() { - Client.updateUserRoles( + updateUserRoles( this.props.user.id, 'system_user', - () => { - AsyncClient.getUser(this.props.user.id); - }, + null, (err) => { this.setState({serverError: err.message}); } @@ -142,12 +141,10 @@ export default class AdminTeamMembersDropdown extends React.Component { handleMakeSystemAdmin(e) { e.preventDefault(); - Client.updateUserRoles( + updateUserRoles( this.props.user.id, 'system_user system_admin', - () => { - AsyncClient.getUser(this.props.user.id); - }, + null, (err) => { this.setState({serverError: err.message}); } |