diff --git a/.github/workflows/dist.yml b/.github/workflows/dist.yml
index 6c14f0802a..07b9fcb7f3 100644
--- a/.github/workflows/dist.yml
+++ b/.github/workflows/dist.yml
@@ -4,7 +4,7 @@ on:
push:
branches:
- master
- - "8.0"
+ - "9.0"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/frontend/src/pages/org-admin/org-user-item.js b/frontend/src/pages/org-admin/org-user-item.js
index 847a8738c1..4036337b50 100644
--- a/frontend/src/pages/org-admin/org-user-item.js
+++ b/frontend/src/pages/org-admin/org-user-item.js
@@ -76,28 +76,12 @@ class UserItem extends React.Component {
this.props.toggleRevokeAdmin(email);
}
- changeStatus = (st) => {
- let isActive;
- if (st == 'active') {
- isActive = 'true';
- } else {
- isActive = 'false';
+ changeStatus = (value) => {
+ const isActive = value == 'active';
+ if (isActive) {
+ toaster.notify(gettext('It may take some time, please wait.'));
}
-
- seafileAPI.orgAdminChangeOrgUserStatus(orgID, this.props.user.email, isActive).then(res => {
- this.setState({
- currentStatus: isActive == 'true' ? 'active' : 'inactive',
- highlight: false,
- showMenu: false,
- });
- toaster.success(gettext('Edit succeeded.'));
- }).catch(error => {
- let errMessage = Utils.getErrorMsg(error);
- if (errMessage === gettext('Error')) {
- errMessage = gettext('Edit failed.');
- }
- toaster.danger(errMessage);
- });
+ this.props.changeStatus(this.props.user.email, isActive);
}
onDropdownToggleClick = (e) => {
@@ -147,7 +131,7 @@ class UserItem extends React.Component {
diff --git a/frontend/src/pages/org-admin/org-users-list.js b/frontend/src/pages/org-admin/org-users-list.js
index 5c0994abb1..fcff10e9ce 100644
--- a/frontend/src/pages/org-admin/org-users-list.js
+++ b/frontend/src/pages/org-admin/org-users-list.js
@@ -6,6 +6,7 @@ import UserItem from './org-user-item';
const propTypes = {
initOrgUsersData: PropTypes.func.isRequired,
toggleDelete: PropTypes.func.isRequired,
+ changeStatus: PropTypes.func.isRequired,
orgUsers: PropTypes.array.isRequired,
page: PropTypes.number.isRequired,
pageNext: PropTypes.bool.isRequired,
@@ -79,6 +80,7 @@ class OrgUsersList extends React.Component {
currentTab="users"
isItemFreezed={this.state.isItemFreezed}
toggleDelete={this.props.toggleDelete}
+ changeStatus={this.props.changeStatus}
onFreezedItem={this.onFreezedItem}
onUnfreezedItem={this.onUnfreezedItem}
/>
diff --git a/frontend/src/pages/org-admin/org-users-users.js b/frontend/src/pages/org-admin/org-users-users.js
index 26a2a44619..4677fb0765 100644
--- a/frontend/src/pages/org-admin/org-users-users.js
+++ b/frontend/src/pages/org-admin/org-users-users.js
@@ -166,6 +166,22 @@ class OrgUsers extends Component {
});
}
+ changeStatus= (email, isActive) => {
+ seafileAPI.orgAdminChangeOrgUserStatus(orgID, email, isActive).then(res => {
+ let users = this.state.orgUsers.map(item => {
+ if (item.email == email) {
+ item['is_active']= res.data['is_active'];
+ }
+ return item;
+ });
+ this.setState({orgUsers: users});
+ toaster.success(gettext('Edit succeeded.'));
+ }).catch(error => {
+ let errMessage = Utils.getErrorMsg(error);
+ toaster.danger(errMessage);
+ });
+ }
+
searchItems = (keyword) => {
navigate(`${siteRoot}org/useradmin/search-users/?query=${encodeURIComponent(keyword)}`);
}
@@ -210,6 +226,7 @@ class OrgUsers extends Component {