mirror of
https://github.com/haiwen/seahub.git
synced 2025-08-19 15:38:38 +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');
|
permissionOptions.push('download_upload');
|
||||||
}
|
}
|
||||||
} else {
|
} 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');
|
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
|
// check if a file is a video
|
||||||
videoCheck: function (filename) {
|
videoCheck: function (filename) {
|
||||||
// no file ext
|
// 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_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_FORCE_USE_PASSWORD, SHARE_LINK_PASSWORD_STRENGTH_LEVEL, \
|
||||||
SHARE_LINK_EXPIRE_DAYS_DEFAULT, ENABLE_SHARE_LINK_REPORT_ABUSE, SEADOC_SERVER_URL, \
|
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, \
|
ENABLE_METADATA_MANAGEMENT, BAIDU_MAP_KEY, GOOGLE_MAP_KEY, GOOGLE_MAP_ID, \
|
||||||
OFFICE_SUITE_LIST
|
ENABLE_MULTIPLE_OFFICE_SUITE, OFFICE_SUITE_LIST, ENABLE_SEADOC
|
||||||
from seahub.constants import PERMISSION_INVISIBLE
|
from seahub.constants import PERMISSION_INVISIBLE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# wopi
|
# wopi
|
||||||
try:
|
try:
|
||||||
from seahub.wopi.settings import ENABLE_OFFICE_WEB_APP
|
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)
|
filesizeformat(FILE_PREVIEW_MAX_SIZE)
|
||||||
return False, error_msg
|
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 \
|
elif filetype in (DOCUMENT, SPREADSHEET) or \
|
||||||
fileext in OFFICE_WEB_APP_FILE_EXTENSION or \
|
fileext in OFFICE_WEB_APP_FILE_EXTENSION or \
|
||||||
fileext in ONLYOFFICE_FILE_EXTENSION:
|
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():
|
if file_type in (TEXT, MARKDOWN) or file_ext in get_conf_text_ext():
|
||||||
return True, ''
|
return True, ''
|
||||||
|
|
||||||
|
if file_type in (SEADOC) and ENABLE_SEADOC:
|
||||||
|
return True, ''
|
||||||
|
|
||||||
if file_type in (DOCUMENT, SPREADSHEET):
|
if file_type in (DOCUMENT, SPREADSHEET):
|
||||||
if ENABLE_OFFICE_WEB_APP_EDIT and \
|
if ENABLE_OFFICE_WEB_APP_EDIT and \
|
||||||
file_ext in OFFICE_WEB_APP_EDIT_FILE_EXTENSION:
|
file_ext in OFFICE_WEB_APP_EDIT_FILE_EXTENSION:
|
||||||
|
Loading…
Reference in New Issue
Block a user