移动模板自定义配置系统的使用说明
该配置系统目前需要 移动模板 版本 ≥ v4.4.2
≥ v4.4.2 请通过 webmail.cf 配置文件中的 useCustomSettings 字段 决定是否开启自定义配置系统
<v4.4.2 请直接修改 /hxphone/json/settings.json 对应配置即可
在 /hxphone/json/custom 文件夹中,放置了对应的模板示范文件,类似于 custom_xxx.sample.json,如果有需要修改对应的自定义配置,可以直接将 custom_xxx.sample.json 重命名为 custom_xxx.json 即可使用
自测 ①:自定义配置系统只在 受 license 控制并且 license 有效的 hxphone 系统中才会生效!(访问 http://example.com/coremail/cmcu_addon/hxpInit.jsp?type=custom 查看 license 是否生效、开启自定义配置的字段是否生效)
自测 ②:如果编辑后的配置文件格式不正确,将导致所有的配置不生效,保存之前,请确认修改后的配置的正确性(在线检测工具:https://www.bejson.com/)
自测 ③:开启自定义配置系统之后,请不要直接修改 /hxphone/json/settings.json 默认的配置,防止后续升级被覆盖
为节省沟通成本,请一定要按照 ① ② ③ 的顺序进行自测,如果仍然有疑问,请新建 JIRA 进行技术咨询
移动模板的自定义配置主要分为以下若干种:
一、国际化资源(即文字)
二、图片资源
三、配色方案
四、功能配置
五、组织级别配置
0. 如何开启并进行配置
请通过 /home/coremail/bin/confutil
对 webmail.cf
进行自定义配置系统的开启和关闭,这样 custom_settings.json
中的自定义配置才会生效
[hxphone]
useCustomSettings=true # 开启自定义配置系统
修改完成之后,需要 restart coremail
/home/coremail/bin/tomcatctl restart coremail
custom_settings.json
中的配置信息会覆盖掉 settings.json
里面的默认配置。所以,所有的自定义配置均建议在 custom_settings.json
里面配置。
注意:不用完全 copy 一份,只需在 custom_settings.json 配置需要开关的功能即可(两个配置文件会进行“合并”,注意层级保持一致哦)
custom_settings.json 示例:
{
"preview": true
}
1. 国际化资源
理论上,移动模板中所有文字都可自行通过配置进行重新自定义。例如,若用户想替换页面标题以及登录页的版权信息,可在目录 /hxphone/json/custom/custom_locale-zh_CN.json
进行编写即可替换默认文字,多种语言请修改对应的文件:
{
"TITLE": "Test",
"COPYRIGHT": "Copyright © Test"
}
注意:改国际化资源要同时改所有语言的配置文件,不要单独改简体中文的,不然用户切换到英文等语言,就会出现默认的文字了!
2. 图片资源
目前,移动模板仅暂时支持登录页 logo 图片的自定义。客户可通过添加配置 /hxphone/json/custom/custom_settings.json
来进行图片替换:
{
"logo": "http://xxx.png"
}
logo 项的值支持 URL 或相对路径配置,若客户把图片上传至服务器,可参考如下方案:
- 把图片文件放至目录
/hxphone/static/img/
下 配置路径为
{ "logo": "static/img/xxx.png" }
3. 配色方案
配色方案的相关配置与图片资源一样由 /hxphone/json/custom/custom_settings.json
进行定义:
--nav-bar-background-color
:导航栏背景颜色--nav-bar-color
:导航栏字体颜色--main-color
:主题颜色(如定义按钮背景颜色)--sub-color
:辅助颜色(如定义按钮字体颜色)
{
"skins": {
"--nav-bar-background-color": "#0085cc",
"--nav-bar-color": "#fff",
"--main-color": "#0085cc",
"--sub-color": "#fff"
}
}
4. 功能配置
可以自行配置的功能配置表如下:
{
// 是否开启调试功能(将默认开启VConsole)
"debug": false,
// 是否开启水印功能
"watermark": false,
// 是否开启预览功能
"preview": false,
// 默认应用语言,可选:zh_CN、zh_TW、en_US
"defaultLanguage": "zh_CN",
// 是否在首页开启"<"返回按钮(内嵌模式使用)
"enableCloseHxphone": false,
// 切换语言下拉框新增其他语言
"addLanguages": [
],
// 需要开启预览的文件后缀类型
"previewType": [
"jpg",
"jpeg",
"png",
"pdf",
"doc",
"ppt",
"xls",
"docx",
"pptx",
"xlsx"
],
// 是否关闭登录页入口
"disableLoginPage": false,
// 是否禁止外网下载
"disableExtranetDownload": false,
// 是否开启统计功能
"enableAnalytics": false,
// 是否使用通用头像功能
"useGeneralAvatar": true,
// 是否开启通用头像文本自定义匹配模式
"useGeneralAvatarTextRule": false,
// 通用头像文本自定义匹配模式规则列表
"generalAvatarTextMatchRule": {
"人力资源部": {"value": "人力", "priority": 1}, //邮件名称中含有“人力资源部”文字,头像中将显示“人力”二字
"服务产品": {"value": "服务","priority": 1},
"coremail论客": {"value": "论客","priority": 1},
"Confluence": {"value": "conflu","priority": 1},
"验证": {"value": "验证", "priority": 1},
"IT部": {"value": "IT", "priority": 1}
},
// 自定义通用头像颜色列表
"avatarColors": [
"#319fd8",
"#776d9c",
"#ab6579",
"#7185a3",
"#b36d63",
"#aa8278",
"#c65961"
],
// 设置菜单中各项功能列表开关
"settingMenu": {
// 定义登出菜单显示规则
// auto: 自动模式,单点登录默认为不显示
// 1: 显示 0: 不显示
"logout": "auto" | 0 | 1,
// 是否显示关于我们菜单
"about": false,
// 是否显示邮件签名菜单
"signature": true,
"secondAuth": false,
"calendar": false,
"notification": false,
// 是否显示切换语言菜单
"language": true,
// 是否显示更改密码菜单
"changePassword": true
},
// 功能模块细分控制开关
"featureControl": {
// 登录页开关
"login": {
// 是否开启忘记密码
"enableGetPasswordBack": true
},
//通讯录功能开关
"addressBook": {
// 是否开启通讯录
"enableAddressBook": true,
// 是否开启组织通讯录
"enableOrganization": true,
// 是否开启个人通讯录
"enablePersonal": true,
// 是否开启星标入口
"enableStarEntrance": true,
// 是否开启设为星标部门功能
"enableMarkStarDept": true,
// 是否开启设为星标联系人功能
"enableMarkStarContact": true,
// 是否开启设为星标(个人详情页面)
"enableMarkStar": true,
// 是否开启写信页面联系人选择入口(写信页面的 + 号)
"enableContactSelectEntrance": true,
// 是否开启写信页面联系人选择里面的组织通讯录入口
"enableOrganizationSelectEntrance": true,
// 是否开启写信页面联系人选择里面的个人通讯录入口
"enablePersonalSelectEntrance": true,
// 是否开启写信页面联系人选择里面的星标入口
"enableStarSelectEntrance": true
},
//日程模块功能开关
"schedule": {
// 是否开启日程功能
"enableSchedule": true
},
// 文件中心功能开关
"fileCenter": {
// 是否开启文件中心
"enableFileCenter": true,
// 是否开启企业网盘
"enableEnterpriseNetworkDisk": true,
// 是否开启个人网盘
"enablePersonalNetworkDisk": true,
// 是否开启从企业网盘选择文件的功能
"enableSelectFromEnterpriseNetworkDisk": true,
// 是否开启从个人网盘选择文件的功能
"enableSelectFromPersonalNetworkDisk": true,
// 是否开启保存文件到个人网盘的功能
"enableMoveToPersonalNetworkDisk": true,
// 是否开启网盘文件下载
"enableFileDownload": true
},
"compose": {
// 是否开启上传文件功能
"enableFileUpload": true,
// 是否开启从本地上传文件功能
"enableFileUploadFromLocal": true,
// 是否开启从文件中心上传文件功能
"enableFileUploadFromFileCenter": true
},
// 读信页面相关配置
"read": {
// 是否开启信件附件下载功能
"enableAttachmentDownload": true,
// 是否开启特殊通道下载(通过 token 鉴权下载)
// 该功能默认为关、在微信浏览器强制为开
// 如果客户的 APP 不支持内置下载,要跳转到系统浏览器,不开启此功能,会出现 cookie not match 的报错
// 开启此功能后,会优先生成一次性的鉴权 token,然后使用 token 进入特殊的通道进行下载
"enableAttachmentDownloadByToken": false
}
},
// 是否开启读信超链接安全提示功能
"enableHyperLinkSecurityAlert": true,
// 如果开启了安全提示功能,以下域名将作为白名单,不进行提示
// 示例:["coremail.cn", "tj.baidu.com"]
// 含有以上字段的域名均会为认为白名单
"secureHyperLinkList": [
],
// 是否开启信件和列表缓存
"enableMailCache": true,
// 缓存读过的信件最大的上限
"mailCacheLimit": 50,
// 是否开启缓存加密功能,这将产生一定的耗时
"mailCacheEncrypt": false,
// 是否开启自动保存草稿功能
"enableAutoSaveDraft": true,
// 自动保存草稿间隔,单位毫秒
"autoSaveDraftInterval": 180000,
// 读信页底部工具栏样式,1为快捷回复模式,2为多标签项模式
"readFooterType": 1
}
5. 组织级别配置
移动模板可以支持组织级别配置,但是需要配置相关文件如下:
/hxphone/json/custom/custom_domains.json
如用户需要根据组织配置登录页的定制,需要设置该文件以绑定组织的对应域名,否则系统在用户登录前将无法识别所需要的组织配置。其中,
domain_name
为相应的域名,而org_id
为对应组织的 id(WebAdmin 中组织管理列表中相关组织的标识)。若无配置该文件,登录页配置会仅读取custom_settings.json
中的相关配置。{ "domain_name": "org_id" }
/hxphone/json/custom/custom_settings.<org_id>.json
假设组织 id 为
a
,则需要添加文件custom_settings.a.json
来配置该组织的相关定制化配置。若未配有域名绑定,而该文件却有定义,则只会在用户登录后才会读取对应的组织配置进行页面定制。
6. 配置优先级
组织级别配置 > 系统级别配置 > 默认配置
当组织级别配置被读取时,相关配置会覆盖系统级别的配置。若组织级别部分配置未定义,系统会往系统级别配置进行读取,若系统级别无配置,则会采用默认配置。