mirror of
https://github.com/haiwen/seahub.git
synced 2025-09-09 02:42:47 +00:00
['folder permission' dialog] fixup: added 'catch' for seafile API requests; fixed prop type checking (#6410)
This commit is contained in:
@@ -7,6 +7,7 @@ import { Utils } from '../../utils/utils';
|
|||||||
import SharePermissionEditor from '../select-editor/share-permission-editor';
|
import SharePermissionEditor from '../select-editor/share-permission-editor';
|
||||||
import FileChooser from '../file-chooser/file-chooser';
|
import FileChooser from '../file-chooser/file-chooser';
|
||||||
import { SeahubSelect, NoGroupMessage } from '../common/select';
|
import { SeahubSelect, NoGroupMessage } from '../common/select';
|
||||||
|
import toaster from '../../components/toast';
|
||||||
|
|
||||||
class GroupItem extends React.Component {
|
class GroupItem extends React.Component {
|
||||||
|
|
||||||
@@ -78,7 +79,7 @@ GroupItem.propTypes = {
|
|||||||
item: PropTypes.object.isRequired,
|
item: PropTypes.object.isRequired,
|
||||||
permissions: PropTypes.array.isRequired,
|
permissions: PropTypes.array.isRequired,
|
||||||
showPath: PropTypes.bool.isRequired,
|
showPath: PropTypes.bool.isRequired,
|
||||||
repoName: PropTypes.string.isRequired,
|
repoName: PropTypes.string,
|
||||||
deleteGroupPermissionItem: PropTypes.func.isRequired,
|
deleteGroupPermissionItem: PropTypes.func.isRequired,
|
||||||
onChangeGroupPermission: PropTypes.func.isRequired,
|
onChangeGroupPermission: PropTypes.func.isRequired,
|
||||||
};
|
};
|
||||||
@@ -128,6 +129,9 @@ class LibSubFolderSetGroupPermissionDialog extends React.Component {
|
|||||||
value: item.name
|
value: item.name
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
}).catch(error => {
|
||||||
|
let errMessage = Utils.getErrorMsg(error);
|
||||||
|
toaster.danger(errMessage);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -142,6 +146,9 @@ class LibSubFolderSetGroupPermissionDialog extends React.Component {
|
|||||||
groupPermissionItems: res.data
|
groupPermissionItems: res.data
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}).catch(error => {
|
||||||
|
let errMessage = Utils.getErrorMsg(error);
|
||||||
|
toaster.danger(errMessage);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -166,7 +173,6 @@ class LibSubFolderSetGroupPermissionDialog extends React.Component {
|
|||||||
errorMsg[i] = res.data.failed[i];
|
errorMsg[i] = res.data.failed[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
this.setState({
|
this.setState({
|
||||||
errorMsg: errorMsg,
|
errorMsg: errorMsg,
|
||||||
groupPermissionItems: this.state.groupPermissionItems.concat(res.data.success),
|
groupPermissionItems: this.state.groupPermissionItems.concat(res.data.success),
|
||||||
@@ -174,20 +180,9 @@ class LibSubFolderSetGroupPermissionDialog extends React.Component {
|
|||||||
permission: 'rw',
|
permission: 'rw',
|
||||||
folderPath: ''
|
folderPath: ''
|
||||||
});
|
});
|
||||||
}).catch((error) => {
|
}).catch(error => {
|
||||||
let errorMsg = '';
|
let errMessage = Utils.getErrorMsg(error);
|
||||||
if (error.response) {
|
toaster.danger(errMessage);
|
||||||
if (error.response.data && error.response.data['error_msg']) {
|
|
||||||
errorMsg = error.response.data['error_msg'];
|
|
||||||
} else {
|
|
||||||
errorMsg = gettext('Error');
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
errorMsg = gettext('Please check the network.');
|
|
||||||
}
|
|
||||||
this.setState({
|
|
||||||
errorMsg: [errorMsg]
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -199,6 +194,9 @@ class LibSubFolderSetGroupPermissionDialog extends React.Component {
|
|||||||
this.setState({
|
this.setState({
|
||||||
groupPermissionItems: this.state.groupPermissionItems.filter(deletedItem => { return deletedItem != item; })
|
groupPermissionItems: this.state.groupPermissionItems.filter(deletedItem => { return deletedItem != item; })
|
||||||
});
|
});
|
||||||
|
}).catch(error => {
|
||||||
|
let errMessage = Utils.getErrorMsg(error);
|
||||||
|
toaster.danger(errMessage);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -208,6 +206,9 @@ class LibSubFolderSetGroupPermissionDialog extends React.Component {
|
|||||||
seafileAPI.updateGroupFolderPerm(item.repo_id, permission, item.folder_path, item.group_id);
|
seafileAPI.updateGroupFolderPerm(item.repo_id, permission, item.folder_path, item.group_id);
|
||||||
request.then(() => {
|
request.then(() => {
|
||||||
this.updateGroupPermission(item, permission);
|
this.updateGroupPermission(item, permission);
|
||||||
|
}).catch(error => {
|
||||||
|
let errMessage = Utils.getErrorMsg(error);
|
||||||
|
toaster.danger(errMessage);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -7,6 +7,7 @@ import { Utils } from '../../utils/utils';
|
|||||||
import UserSelect from '../user-select';
|
import UserSelect from '../user-select';
|
||||||
import SharePermissionEditor from '../select-editor/share-permission-editor';
|
import SharePermissionEditor from '../select-editor/share-permission-editor';
|
||||||
import FileChooser from '../file-chooser/file-chooser';
|
import FileChooser from '../file-chooser/file-chooser';
|
||||||
|
import toaster from '../../components/toast';
|
||||||
|
|
||||||
class UserItem extends React.Component {
|
class UserItem extends React.Component {
|
||||||
|
|
||||||
@@ -81,7 +82,7 @@ UserItem.propTypes = {
|
|||||||
deleteUserFolderPermission: PropTypes.func.isRequired,
|
deleteUserFolderPermission: PropTypes.func.isRequired,
|
||||||
onChangeUserFolderPerm: PropTypes.func.isRequired,
|
onChangeUserFolderPerm: PropTypes.func.isRequired,
|
||||||
showPath: PropTypes.bool.isRequired,
|
showPath: PropTypes.bool.isRequired,
|
||||||
repoName: PropTypes.string.isRequired,
|
repoName: PropTypes.string,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -125,6 +126,9 @@ class LibSubFolderSetUserPermissionDialog extends React.Component {
|
|||||||
if (res.data.length !== 0) {
|
if (res.data.length !== 0) {
|
||||||
this.setState({userFolderPermItems: res.data});
|
this.setState({userFolderPermItems: res.data});
|
||||||
}
|
}
|
||||||
|
}).catch(error => {
|
||||||
|
let errMessage = Utils.getErrorMsg(error);
|
||||||
|
toaster.danger(errMessage);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -159,20 +163,9 @@ class LibSubFolderSetUserPermissionDialog extends React.Component {
|
|||||||
folderPath: '',
|
folderPath: '',
|
||||||
});
|
});
|
||||||
this.refs.userSelect.clearSelect();
|
this.refs.userSelect.clearSelect();
|
||||||
}).catch((error) => {
|
}).catch(error => {
|
||||||
let errorMsg = '';
|
let errMessage = Utils.getErrorMsg(error);
|
||||||
if (error.response) {
|
toaster.danger(errMessage);
|
||||||
if (error.response.data && error.response.data['error_msg']) {
|
|
||||||
errorMsg = error.response.data['error_msg'];
|
|
||||||
} else {
|
|
||||||
errorMsg = gettext('Error');
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
errorMsg = gettext('Please check the network.');
|
|
||||||
}
|
|
||||||
this.setState({
|
|
||||||
errorMsg: [errorMsg]
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -186,6 +179,9 @@ class LibSubFolderSetUserPermissionDialog extends React.Component {
|
|||||||
return deletedItem != item;
|
return deletedItem != item;
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
|
}).catch(error => {
|
||||||
|
let errMessage = Utils.getErrorMsg(error);
|
||||||
|
toaster.danger(errMessage);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -201,6 +197,9 @@ class LibSubFolderSetUserPermissionDialog extends React.Component {
|
|||||||
return item;
|
return item;
|
||||||
});
|
});
|
||||||
this.setState({userFolderPermItems: userFolderPermItems});
|
this.setState({userFolderPermItems: userFolderPermItems});
|
||||||
|
}).catch(error => {
|
||||||
|
let errMessage = Utils.getErrorMsg(error);
|
||||||
|
toaster.danger(errMessage);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user