mirror of
https://github.com/haiwen/seahub.git
synced 2025-04-28 03:10:45 +00:00
support edit perm when generate share link for sdoc file
This commit is contained in:
parent
8ebf4e7225
commit
a711e834a0
@ -177,7 +177,7 @@ export const Utils = {
|
||||
permissionOptions.push('download_upload');
|
||||
}
|
||||
} else {
|
||||
if (this.isEditableOfficeFile(path) && (permission == 'rw' || permission == 'admin') && canEdit) {
|
||||
if ((this.isEditableOfficeFile(path) || this.isEditableSdocFile(path)) && (permission == 'rw' || permission == 'admin') && canEdit) {
|
||||
permissionOptions.push('edit_download');
|
||||
}
|
||||
|
||||
@ -222,6 +222,20 @@ export const Utils = {
|
||||
}
|
||||
},
|
||||
|
||||
isEditableSdocFile: function (filename) {
|
||||
// no file ext
|
||||
if (filename.lastIndexOf('.') == -1) {
|
||||
return false;
|
||||
}
|
||||
const file_ext = filename.substr(filename.lastIndexOf('.') + 1).toLowerCase();
|
||||
|
||||
if (enableSeadoc && file_ext == 'sdoc') {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
},
|
||||
|
||||
// check if a file is a video
|
||||
videoCheck: function (filename) {
|
||||
// no file ext
|
||||
|
@ -82,12 +82,10 @@ from seahub.settings import FILE_ENCODING_LIST, FILE_PREVIEW_MAX_SIZE, \
|
||||
SHARE_LINK_EXPIRE_DAYS_MIN, SHARE_LINK_EXPIRE_DAYS_MAX, SHARE_LINK_PASSWORD_MIN_LENGTH, \
|
||||
SHARE_LINK_FORCE_USE_PASSWORD, SHARE_LINK_PASSWORD_STRENGTH_LEVEL, \
|
||||
SHARE_LINK_EXPIRE_DAYS_DEFAULT, ENABLE_SHARE_LINK_REPORT_ABUSE, SEADOC_SERVER_URL, \
|
||||
ENABLE_METADATA_MANAGEMENT, BAIDU_MAP_KEY, GOOGLE_MAP_KEY, GOOGLE_MAP_ID, ENABLE_MULTIPLE_OFFICE_SUITE, \
|
||||
OFFICE_SUITE_LIST
|
||||
ENABLE_METADATA_MANAGEMENT, BAIDU_MAP_KEY, GOOGLE_MAP_KEY, GOOGLE_MAP_ID, \
|
||||
ENABLE_MULTIPLE_OFFICE_SUITE, OFFICE_SUITE_LIST, ENABLE_SEADOC
|
||||
from seahub.constants import PERMISSION_INVISIBLE
|
||||
|
||||
|
||||
|
||||
# wopi
|
||||
try:
|
||||
from seahub.wopi.settings import ENABLE_OFFICE_WEB_APP
|
||||
@ -391,6 +389,10 @@ def can_preview_file(file_name, file_size, repo):
|
||||
filesizeformat(FILE_PREVIEW_MAX_SIZE)
|
||||
return False, error_msg
|
||||
|
||||
elif filetype in (SEADOC) and not ENABLE_SEADOC:
|
||||
error_msg = "File preview unsupported"
|
||||
return False, error_msg
|
||||
|
||||
elif filetype in (DOCUMENT, SPREADSHEET) or \
|
||||
fileext in OFFICE_WEB_APP_FILE_EXTENSION or \
|
||||
fileext in ONLYOFFICE_FILE_EXTENSION:
|
||||
@ -437,6 +439,9 @@ def can_edit_file(file_name, file_size, repo):
|
||||
if file_type in (TEXT, MARKDOWN) or file_ext in get_conf_text_ext():
|
||||
return True, ''
|
||||
|
||||
if file_type in (SEADOC) and ENABLE_SEADOC:
|
||||
return True, ''
|
||||
|
||||
if file_type in (DOCUMENT, SPREADSHEET):
|
||||
if ENABLE_OFFICE_WEB_APP_EDIT and \
|
||||
file_ext in OFFICE_WEB_APP_EDIT_FILE_EXTENSION:
|
||||
|
Loading…
Reference in New Issue
Block a user