1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-21 19:37:28 +00:00

dtable share update API-js

This commit is contained in:
sniper-py
2019-07-02 11:45:32 +08:00
parent 240ca9528a
commit 42f8462c7d
4 changed files with 24 additions and 24 deletions

View File

@@ -12,8 +12,8 @@ import '../../css/invitations.css';
const userItemPropTypes = {
item: PropTypes.object.isRequired,
permissions: PropTypes.array.isRequired,
deleteShareTable: PropTypes.func.isRequired,
changeShareTablePermission: PropTypes.func.isRequired,
deleteTableShare: PropTypes.func.isRequired,
updateTableShare: PropTypes.func.isRequired,
};
class UserItem extends React.Component {
@@ -33,12 +33,12 @@ class UserItem extends React.Component {
this.setState({isOperationShow: false});
};
deleteShareTable = () => {
this.props.deleteShareTable(this.props.item.email);
deleteTableShare = () => {
this.props.deleteTableShare(this.props.item.email);
};
changeShareTablePermission = (permission) => {
this.props.changeShareTablePermission(this.props.item.email, permission);
updateTableShare = (permission) => {
this.props.updateTableShare(this.props.item.email, permission);
};
render() {
@@ -53,13 +53,13 @@ class UserItem extends React.Component {
isEditIconShow={this.state.isOperationShow}
currentPermission={currentPermission}
permissions={this.props.permissions}
onPermissionChanged={this.changeShareTablePermission}
onPermissionChanged={this.updateTableShare}
/>
</td>
<td>
<span
className={`sf2-icon-x3 action-icon ${this.state.isOperationShow ? '' : 'hide'}`}
onClick={this.deleteShareTable}
onClick={this.deleteTableShare}
title={gettext('Delete')}
>
</span>
@@ -90,7 +90,7 @@ class ShareTableToUser extends React.Component {
}
componentDidMount() {
seafileAPI.listShareTableUser(this.workspaceID, this.tableName).then((res) => {
seafileAPI.listTableShares(this.workspaceID, this.tableName).then((res) => {
this.setState({userList: res.data.user_list});
});
}
@@ -111,14 +111,14 @@ class ShareTableToUser extends React.Component {
}
};
addShareTable = () => {
addTableShare = () => {
if (!this.state.selectedOption || this.state.selectedOption.length === 0) {
return;
}
let name = this.state.selectedOption.value;
let email = this.state.selectedOption.email;
let permission = this.state.permission;
seafileAPI.addShareTable(this.workspaceID, this.tableName, email, permission).then((res) => {
seafileAPI.addTableShare(this.workspaceID, this.tableName, email, permission).then((res) => {
let userList = this.state.userList;
let userInfo = {
name: name,
@@ -138,8 +138,8 @@ class ShareTableToUser extends React.Component {
});
};
deleteShareTable = (email) => {
seafileAPI.deleteShareTable(this.workspaceID, this.tableName, email).then((res) => {
deleteTableShare = (email) => {
seafileAPI.deleteTableShare(this.workspaceID, this.tableName, email).then((res) => {
let userList = this.state.userList.filter(userInfo => {
return userInfo.email !== email;
});
@@ -151,8 +151,8 @@ class ShareTableToUser extends React.Component {
});
};
changeShareTablePermission = (email, permission) => {
seafileAPI.modifyShareTablePermission(this.workspaceID, this.tableName, email, permission).then((res) => {
updateTableShare = (email, permission) => {
seafileAPI.updateTableShare(this.workspaceID, this.tableName, email, permission).then((res) => {
let userList = this.state.userList.filter(userInfo => {
if (userInfo.email === email) {
userInfo.permission = permission;
@@ -174,8 +174,8 @@ class ShareTableToUser extends React.Component {
key={index}
item={item}
permissions={this.permissions}
deleteShareTable={this.deleteShareTable}
changeShareTablePermission={this.changeShareTablePermission}
deleteTableShare={this.deleteTableShare}
updateTableShare={this.updateTableShare}
/>
);
});
@@ -211,7 +211,7 @@ class ShareTableToUser extends React.Component {
/>
</td>
<td>
<Button onClick={this.addShareTable}>{gettext('Submit')}</Button>
<Button onClick={this.addTableShare}>{gettext('Submit')}</Button>
</td>
</tr>
</tbody>

View File

@@ -318,8 +318,8 @@ class DTable extends Component {
});
}
listShareTable = () => {
seafileAPI.listShareTable().then((res) => {
listSharedTables = () => {
seafileAPI.listSharedTables().then((res) => {
this.setState({
shareTableLoading: false,
shareTableList: res.data.table_list,
@@ -343,7 +343,7 @@ class DTable extends Component {
let email = username;
let tableName = table.name;
let workspaceID = table.workspace_id;
seafileAPI.deleteShareTable(workspaceID, tableName, email).then(() => {
seafileAPI.deleteTableShare(workspaceID, tableName, email).then(() => {
let shareTableList = this.state.shareTableList.filter(table => {
return table.name !== tableName;
});
@@ -361,7 +361,7 @@ class DTable extends Component {
componentDidMount() {
this.listWorkspaces();
this.listShareTable();
this.listSharedTables();
}
renderShareTablePanel = () => {

View File

@@ -52,7 +52,7 @@ class ShareTableItem extends Component {
className="action-icon sf2-icon-x3"
title={gettext('Leave Share')}
style={!this.state.active ? {opacity: 0} : {}}
onClick={this.onLeaveShareTableSubmit.bind(this)}>
onClick={this.onLeaveShareTableSubmit}>
</i>
</td>
</tr>

View File

@@ -374,7 +374,7 @@ urlpatterns = [
url(r'^api/v2.1/workspace/(?P<workspace_id>\d+)/dtable-asset-upload-link/$', DTableAssetUploadLinkView.as_view(), name='api-v2.1-workspace-dtable-asset-upload-link'),
url(r'^workspace/(?P<workspace_id>\d+)/dtable/(?P<name>.*)/$', dtable_file_view, name='dtable-file-view'),
url(r'^workspace/(?P<workspace_id>\d+)/asset/(?P<dtable_id>[-0-9a-f]{36})/(?P<path>.*)$', dtable_asset_access, name='dtable-asset-access'),
url(r'^api/v2.1/dtables/share/$', ShareDTablesView.as_view(), name='api-v2.1-dtables-share'),
url(r'^api/v2.1/dtables/shared/$', ShareDTablesView.as_view(), name='api-v2.1-dtables-share'),
url(r'^api/v2.1/workspace/(?P<workspace_id>\d+)/dtable/(?P<name>.*)/share/$', ShareDTableView.as_view(), name='api-v2.1-dtable-share'),
# Deprecated