117 lines
5.9 KiB
Python
117 lines
5.9 KiB
Python
from django.conf import settings as gSettings # 全局设置
|
||
|
||
# 工具栏样式,可以添加任意多的模式
|
||
toolbars_settings = {
|
||
"besttome": [
|
||
['source', 'undo', 'redo', 'bold', 'italic', 'underline', 'forecolor', 'backcolor', 'superscript', 'subscript',
|
||
"justifyleft", "justifycenter", "justifyright", "insertorderedlist", "insertunorderedlist", "blockquote",
|
||
'formatmatch', "removeformat", 'autotypeset', 'inserttable', "pasteplain", "wordimage", "searchreplace", "map",
|
||
"preview", "fullscreen"],
|
||
['insertcode', 'paragraph', "fontfamily", "fontsize", 'link', 'unlink', 'insertimage', 'insertvideo',
|
||
'attachment', 'emotion', "date", "time"]],
|
||
"mini": [['source', '|', 'undo', 'redo', '|', 'bold', 'italic', 'underline', 'formatmatch', 'autotypeset', '|',
|
||
'forecolor', 'backcolor', '|', 'link', 'unlink', '|', 'simpleupload', 'attachment']],
|
||
"normal": [['source', '|', 'undo', 'redo', '|', 'bold', 'italic', 'underline', 'removeformat', 'formatmatch',
|
||
'autotypeset', '|', 'forecolor', 'backcolor', '|', 'link', 'unlink', '|', 'simpleupload', 'emotion',
|
||
'attachment', '|', 'inserttable', 'deletetable', 'insertparagraphbeforetable', 'insertrow', 'deleterow',
|
||
'insertcol', 'deletecol', 'mergecells', 'mergeright', 'mergedown', 'splittocells', 'splittorows',
|
||
'splittocols']]
|
||
}
|
||
|
||
# 默认的Ueditor设置,请参见ueditor.config.js
|
||
ueditor_settings = {
|
||
"toolbars": toolbars_settings["normal"],
|
||
"autoFloatEnabled": False,
|
||
"defaultPathFormat": "%(basename)s_%(datetime)s_%(rnd)s.%(extname)s" # 默认保存上传文件的命名方式
|
||
}
|
||
# 请参阅php文件夹里面的config.json进行配置
|
||
ueditor_upload_settings = {
|
||
# 上传图片配置项
|
||
"imageActionName": "uploadimage", # 执行上传图片的action名称
|
||
"imageMaxSize": 10485760, # 上传大小限制,单位B,10M
|
||
"imageFieldName": "upfile", # * 提交的图片表单名称 */
|
||
"imagePathFormat": "",
|
||
"imageInsertAlign": "none",
|
||
"imageAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"], # 上传图片格式显示
|
||
|
||
# 涂鸦图片上传配置项 */
|
||
"scrawlActionName": "uploadscrawl", # 执行上传涂鸦的action名称 */
|
||
"scrawlFieldName": "upfile", # 提交的图片表单名称 */
|
||
"scrawlMaxSize": 10485760, # 上传大小限制,单位B 10M
|
||
"scrawlPathFormat": "",
|
||
"scrawlInsertAlign": "none",
|
||
|
||
# 截图工具上传 */
|
||
"snapscreenActionName": "uploadimage", # 执行上传截图的action名称 */
|
||
"snapscreenPathFormat": "",
|
||
"snapscreenInsertAlign": "none", # /* 插入的图片浮动方式 */
|
||
|
||
# 抓取远程图片配置 */
|
||
"catcherLocalDomain": ["127.0.0.1", "localhost", "img.baidu.com"],
|
||
"catcherPathFormat": "",
|
||
"catcherActionName": "catchimage", # 执行抓取远程图片的action名称 */
|
||
"catcherFieldName": "source", # 提交的图片列表表单名称 */
|
||
"catcherMaxSize": 10485760, # 上传大小限制,单位B */
|
||
"catcherAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"], # 抓取图片格式显示 */
|
||
"catcherInsertAlign": "none", # /* 插入的图片浮动方式 */
|
||
# 上传视频配置 */
|
||
"videoActionName": "uploadvideo", # 执行上传视频的action名称 */
|
||
"videoPathFormat": "",
|
||
"videoFieldName": "upfile", # 提交的视频表单名称 */
|
||
"videoMaxSize": 102400000, # 上传大小限制,单位B,默认100MB */
|
||
"videoAllowFiles": [
|
||
".flv", ".swf", ".mkv", ".avi", ".rm", ".rmvb", ".mpeg", ".mpg",
|
||
".ogg", ".ogv", ".mov", ".wmv", ".mp4", ".webm", ".mp3", ".wav", ".mid"], # 上传视频格式显示 */
|
||
|
||
# 上传文件配置 */
|
||
"fileActionName": "uploadfile", # controller里,执行上传视频的action名称 */
|
||
"filePathFormat": "",
|
||
"fileFieldName": "upfile", # 提交的文件表单名称 */
|
||
"fileMaxSize": 204800000, # 上传大小限制,单位B,200MB */
|
||
"fileAllowFiles": [
|
||
".png", ".jpg", ".jpeg", ".gif", ".bmp",
|
||
".flv", ".swf", ".mkv", ".avi", ".rm", ".rmvb", ".mpeg", ".mpg",
|
||
".ogg", ".ogv", ".mov", ".wmv", ".mp4", ".webm", ".mp3", ".wav", ".mid",
|
||
".rar", ".zip", ".tar", ".gz", ".7z", ".bz2", ".cab", ".iso",
|
||
".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".pdf", ".txt", ".md", ".xml"
|
||
], # 上传文件格式显示 */
|
||
|
||
# 列出指定目录下的图片 */
|
||
"imageManagerActionName": "listimage", # 执行图片管理的action名称 */
|
||
"imageManagerListPath": "",
|
||
"imageManagerListSize": 30, # 每次列出文件数量 */
|
||
"imageManagerAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"], # 列出的文件类型 */
|
||
|
||
# 列出指定目录下的文件 */
|
||
"fileManagerActionName": "listfile", # 执行文件管理的action名称 */
|
||
"fileManagerListPath": "",
|
||
"fileManagerListSize": 30, # 每次列出文件数量 */
|
||
"fileManagerAllowFiles": [
|
||
".png", ".jpg", ".jpeg", ".gif", ".bmp", ".tif", ".psd"
|
||
".flv", ".swf", ".mkv", ".avi", ".rm", ".rmvb", ".mpeg",
|
||
".mpg",
|
||
".ogg", ".ogv", ".mov", ".wmv", ".mp4", ".webm", ".mp3", ".wav", ".mid",
|
||
".rar", ".zip", ".tar", ".gz", ".7z", ".bz2", ".cab", ".iso",
|
||
".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".pdf", ".txt", ".md", ".xml",
|
||
".exe", ".com", ".dll", ".msi"
|
||
] # 列出的文件类型 */
|
||
}
|
||
|
||
|
||
# 更新配置:从用户配置文件settings.py重新读入配置UEDITOR_SETTINGS,覆盖默认
|
||
def update_user_settings():
|
||
user_settings = getattr(gSettings, "UEDITOR_SETTINGS", {}).copy()
|
||
if 'config' in user_settings:
|
||
ueditor_settings.update(user_settings["config"])
|
||
if 'upload' in user_settings:
|
||
ueditor_upload_settings.update(user_settings["upload"])
|
||
|
||
|
||
# 读取用户Settings文件并覆盖默认配置
|
||
update_user_settings()
|
||
|
||
|
||
# 取得配置项参数
|
||
def get_ueditor_settings(key, default=None):
|
||
return ueditor_settings.get(key, default)
|