From bbeb36af8a26e864f87a16e8906e6425c19ea349 Mon Sep 17 00:00:00 2001
From: Michael An <2331806369@qq.com>
Date: Wed, 23 Oct 2024 07:43:02 +0800
Subject: [PATCH] Fix transfer group or repo bug (#6934)
* 01 fix transfer repo to other user
* 02 fix transfer group to other users
* 03 group no repo style
---
frontend/src/components/dialog/transfer-dialog.js | 7 +++++--
frontend/src/components/dialog/transfer-group-dialog.js | 8 +++++++-
frontend/src/pages/groups/group-view.js | 3 +--
3 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/frontend/src/components/dialog/transfer-dialog.js b/frontend/src/components/dialog/transfer-dialog.js
index 0976c9aeca..51cf7dea99 100644
--- a/frontend/src/components/dialog/transfer-dialog.js
+++ b/frontend/src/components/dialog/transfer-dialog.js
@@ -49,8 +49,11 @@ class TransferDialog extends React.Component {
};
submit = () => {
- let user = this.state.selectedOption;
- this.props.submit(user);
+ let selectedOption = this.state.selectedOption;
+ if (selectedOption && selectedOption[0]) {
+ let user = selectedOption[0];
+ this.props.submit(user);
+ }
};
componentDidMount() {
diff --git a/frontend/src/components/dialog/transfer-group-dialog.js b/frontend/src/components/dialog/transfer-group-dialog.js
index 65c0b0c720..38628952b7 100644
--- a/frontend/src/components/dialog/transfer-group-dialog.js
+++ b/frontend/src/components/dialog/transfer-group-dialog.js
@@ -5,6 +5,7 @@ import { gettext } from '../../utils/constants';
import { seafileAPI } from '../../utils/seafile-api';
import UserSelect from '../user-select';
import { Utils } from '../../utils/utils';
+import toaster from '../toast';
import '../../css/transfer-group-dialog.css';
@@ -34,10 +35,15 @@ class TransferGroupDialog extends React.Component {
};
transferGroup = () => {
- const email = this.state.selectedOption && this.state.selectedOption.email;
+ let selectedOption = this.state.selectedOption;
+ let email;
+ if (selectedOption && selectedOption[0]) {
+ email = selectedOption[0].email;
+ }
if (email) {
seafileAPI.transferGroup(this.props.groupID, email).then((res) => {
this.props.toggleTransferGroupDialog();
+ toaster.success(gettext('Group has been transfered'));
}).catch((error) => {
let errMessage = Utils.getErrorMsg(error);
this.setState({ errMessage: errMessage });
diff --git a/frontend/src/pages/groups/group-view.js b/frontend/src/pages/groups/group-view.js
index 093d3f271b..c5b9d8b33c 100644
--- a/frontend/src/pages/groups/group-view.js
+++ b/frontend/src/pages/groups/group-view.js
@@ -133,13 +133,12 @@ class GroupView extends React.Component {
);
} else {
if (currentGroup.admins.indexOf(username) == -1) { // is a member of this group
return (
-
+
);
} else {
return (