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 (