summaryrefslogtreecommitdiffstats
path: root/web/react/components/admin_console/user_item.jsx
diff options
context:
space:
mode:
author=Corey Hulen <corey@hulen.com>2015-09-23 15:16:48 -0700
committer=Corey Hulen <corey@hulen.com>2015-09-23 15:16:48 -0700
commit985aebf86120188c2a14adfab39af7c4da3c1c9d (patch)
tree45f4421eec697be3750a59f298e97bf6c39ade79 /web/react/components/admin_console/user_item.jsx
parent7f3bfdbe0c2442714bb5a14adfdeac1576123601 (diff)
downloadchat-985aebf86120188c2a14adfab39af7c4da3c1c9d.tar.gz
chat-985aebf86120188c2a14adfab39af7c4da3c1c9d.tar.bz2
chat-985aebf86120188c2a14adfab39af7c4da3c1c9d.zip
Fixing state setting
Diffstat (limited to 'web/react/components/admin_console/user_item.jsx')
-rw-r--r--web/react/components/admin_console/user_item.jsx40
1 files changed, 38 insertions, 2 deletions
diff --git a/web/react/components/admin_console/user_item.jsx b/web/react/components/admin_console/user_item.jsx
index ff204e1d9..32812e875 100644
--- a/web/react/components/admin_console/user_item.jsx
+++ b/web/react/components/admin_console/user_item.jsx
@@ -12,6 +12,7 @@ export default class UserItem extends React.Component {
this.handleMakeActive = this.handleMakeActive.bind(this);
this.handleMakeNotActive = this.handleMakeNotActive.bind(this);
this.handleMakeAdmin = this.handleMakeAdmin.bind(this);
+ this.handleMakeSystemAdmin = this.handleMakeSystemAdmin.bind(this);
this.handleResetPassword = this.handleResetPassword.bind(this);
this.state = {};
@@ -75,6 +76,23 @@ export default class UserItem extends React.Component {
);
}
+ handleMakeSystemAdmin(e) {
+ e.preventDefault();
+ const data = {
+ user_id: this.props.user.id,
+ new_roles: 'system_admin'
+ };
+
+ Client.updateRoles(data,
+ () => {
+ this.props.refreshProfiles();
+ },
+ (err) => {
+ this.setState({serverError: err.message});
+ }
+ );
+ }
+
handleResetPassword(e) {
e.preventDefault();
this.props.doPasswordReset(this.props.user);
@@ -101,8 +119,9 @@ export default class UserItem extends React.Component {
}
const email = user.email;
- let showMakeMember = (user.roles === 'admin') || user.roles === 'system_admin';
- let showMakeAdmin = (user.roles === '') || user.roles === 'system_admin';
+ let showMakeMember = user.roles === 'admin' || user.roles === 'system_admin';
+ let showMakeAdmin = user.roles === '' || user.roles === 'system_admin';
+ let showMakeSystemAdmin = user.roles === '' || user.roles === 'admin';
let showMakeActive = false;
let showMakeNotActive = user.roles !== 'system_admin';
@@ -111,10 +130,26 @@ export default class UserItem extends React.Component {
currentRoles = 'Inactive';
showMakeMember = false;
showMakeAdmin = false;
+ showMakeSystemAdmin = false;
showMakeActive = true;
showMakeNotActive = false;
}
+ let makeSystemAdmin = null;
+ if (showMakeSystemAdmin) {
+ makeSystemAdmin = (
+ <li role='presentation'>
+ <a
+ role='menuitem'
+ href='#'
+ onClick={this.handleMakeSystemAdmin}
+ >
+ {'Make System Admin'}
+ </a>
+ </li>
+ );
+ }
+
let makeAdmin = null;
if (showMakeAdmin) {
makeAdmin = (
@@ -206,6 +241,7 @@ export default class UserItem extends React.Component {
{makeMember}
{makeActive}
{makeNotActive}
+ {makeSystemAdmin}
<li role='presentation'>
<a
role='menuitem'