diff --git a/frontend/package-lock.json b/frontend/package-lock.json index cf01488777..54663faa42 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -148,9 +148,9 @@ } }, "@seafile/resumablejs": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/@seafile/resumablejs/-/resumablejs-1.1.15.tgz", - "integrity": "sha512-DJPhjBRLENONdDNaaKRckWWtwXvoqfJcRdSk01FbjmZ3DWpbIwebd/vfuB4qJwm0R2j2qzdEVhgxe6wDYS/n9A==" + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/@seafile/resumablejs/-/resumablejs-1.1.16.tgz", + "integrity": "sha512-8rBbmAEuuwOAGHYGCtEzpx+bxAcGS+V30otMmhRe7bPAdh4E57RWgCa8x7pkzHGFlY1t5d+ILz1gojvPVMYQig==" }, "@seafile/seafile-calendar": { "version": "0.0.12", diff --git a/frontend/package.json b/frontend/package.json index 205a890545..7ec22d1188 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -5,7 +5,7 @@ "dependencies": { "@reach/router": "^1.2.0", "@seafile/react-image-lightbox": "0.0.1", - "@seafile/resumablejs": "^1.1.15", + "@seafile/resumablejs": "1.1.16", "@seafile/seafile-calendar": "0.0.12", "@seafile/seafile-editor": "^0.2.84", "MD5": "^1.3.0", diff --git a/frontend/src/components/file-uploader/file-uploader.js b/frontend/src/components/file-uploader/file-uploader.js index a65afbf8c2..ee1f66c5ac 100644 --- a/frontend/src/components/file-uploader/file-uploader.js +++ b/frontend/src/components/file-uploader/file-uploader.js @@ -388,6 +388,18 @@ class FileUploader extends React.Component { this.setState({uploadFileList: uploadFileList}); } + getFileServerErrorMessage = (key) => { + const errorMessage = { + 'File locked by others.': gettext('File locked by others.'), // 403 + 'Invalid filename.': gettext('Invalid filename.'), // 440 + 'File already exists.': gettext('File already exists.'), // 441 + 'File size is too large.': gettext('File size is too large.'), // 442 + 'Out of quota.': gettext('Out of quota.'), // 443 + 'Internal error.': gettext('Internal Server Error'), // 500 + } + return errorMessage[key] || key; + } + onFileError = (resumableFile, message) => { let error = ''; if (!message) { @@ -396,13 +408,7 @@ class FileUploader extends React.Component { // eg: '{"error": "Internal error" \n }' let errorMessage = message.replace(/\n/g, ''); errorMessage = JSON.parse(errorMessage); - error = errorMessage.error; - if (error === 'File locked by others.') { - error = gettext('File is locked by others.'); - } - if (error === 'Internal error.') { - error = gettext('Internal Server Error'); - } + error = this.getFileServerErrorMessage(errorMessage.error); } let uploadFileList = this.state.uploadFileList.map(item => { @@ -489,12 +495,12 @@ class FileUploader extends React.Component { onFileUpload = () => { this.uploadInput.current.removeAttribute('webkitdirectory'); - this.uploadInput.current.click(); + this.uploadInput.current.click(); } onFolderUpload = () => { this.uploadInput.current.setAttribute('webkitdirectory', 'webkitdirectory'); - this.uploadInput.current.click(); + this.uploadInput.current.click(); } onDragStart = () => {