|
@@ -2,8 +2,6 @@ import React, { Fragment } from 'react';
|
|
|
import PropTypes from 'prop-types';
|
|
import PropTypes from 'prop-types';
|
|
|
import { withTranslation } from 'react-i18next';
|
|
import { withTranslation } from 'react-i18next';
|
|
|
|
|
|
|
|
-import { toastSuccess, toastError } from '../../../util/apiNotification';
|
|
|
|
|
-
|
|
|
|
|
import StatusActivateForm from './StatusActivateForm';
|
|
import StatusActivateForm from './StatusActivateForm';
|
|
|
import StatusSuspendedForm from './StatusSuspendedForm';
|
|
import StatusSuspendedForm from './StatusSuspendedForm';
|
|
|
import RemoveUserButton from './UserRemoveButton';
|
|
import RemoveUserButton from './UserRemoveButton';
|
|
@@ -29,19 +27,6 @@ class UserMenu extends React.Component {
|
|
|
this.props.onPasswordResetClicked(this.props.user);
|
|
this.props.onPasswordResetClicked(this.props.user);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- async removeUser() {
|
|
|
|
|
- const { appContainer, user } = this.props;
|
|
|
|
|
-
|
|
|
|
|
- try {
|
|
|
|
|
- const response = await appContainer.apiv3.delete(`/users/${user._id}/remove`);
|
|
|
|
|
- const { username } = response.data.userData;
|
|
|
|
|
- toastSuccess(`Delete ${username} success`);
|
|
|
|
|
- }
|
|
|
|
|
- catch (err) {
|
|
|
|
|
- toastError(err);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
render() {
|
|
render() {
|
|
|
const { t, user } = this.props;
|
|
const { t, user } = this.props;
|
|
|
|
|
|
|
@@ -63,7 +48,7 @@ class UserMenu extends React.Component {
|
|
|
<li>
|
|
<li>
|
|
|
{(user.status === 1 || user.status === 3) && <StatusActivateForm user={user} />}
|
|
{(user.status === 1 || user.status === 3) && <StatusActivateForm user={user} />}
|
|
|
{user.status === 2 && <StatusSuspendedForm user={user} />}
|
|
{user.status === 2 && <StatusSuspendedForm user={user} />}
|
|
|
- {(user.status === 1 || user.status === 3 || user.status === 5) && <RemoveUserButton user={user} removeUser={() => { this.removeUser() }} />}
|
|
|
|
|
|
|
+ {(user.status === 1 || user.status === 3 || user.status === 5) && <RemoveUserButton user={user} removeUser={this.props.removeUser} />}
|
|
|
</li>
|
|
</li>
|
|
|
<li className="divider pl-0"></li>
|
|
<li className="divider pl-0"></li>
|
|
|
<li className="dropdown-header">{ t('user_management.administrator_menu') }</li>
|
|
<li className="dropdown-header">{ t('user_management.administrator_menu') }</li>
|
|
@@ -88,6 +73,7 @@ UserMenu.propTypes = {
|
|
|
appContainer: PropTypes.instanceOf(AppContainer).isRequired,
|
|
appContainer: PropTypes.instanceOf(AppContainer).isRequired,
|
|
|
|
|
|
|
|
user: PropTypes.object.isRequired,
|
|
user: PropTypes.object.isRequired,
|
|
|
|
|
+ removeUser: PropTypes.func.isRequired,
|
|
|
onPasswordResetClicked: PropTypes.func.isRequired,
|
|
onPasswordResetClicked: PropTypes.func.isRequired,
|
|
|
};
|
|
};
|
|
|
|
|
|