MantisBT是一个开源缺陷管理系统,最近工作当中用到这个比较多,把配置心得和添加富文本编辑器支持的方法分享出来。

配置好的效果如下图:

重置用户密码

MantisBT默认情况下重置密码是通过邮件来发送密码信息的,在禁用邮件功能的主机上使用等情况下十分不方便。

可以通过修改config_default_inc.php来解决。

修改后,使用管理员账号登录系统,重置用户密码,用户密码将改为空,被重置的用户使用空密码登录系统后自行修改即可。

 

开启用户头像及显示真实姓名

先在系统内将Gravatar头像插件开启,然后修改config_default_inc.php文件。

Gravatar在国内因为周所周知的原因,可以更换为镜像源。

修改\plugins\Gravatar\Gravatar.php

也可以搞一个头像“缓存”,在安装目录下新建一个名为 pp 的文件夹,并设置好权限。

同样是修改\plugins\Gravatar\Gravatar.php

最后新增一个下载头像的函数

只能说是非常简易的缓存了,把头像下回来,本地有时显示本地的,没有再去请求一个。

回头也许加一个过期时间并处理。

 

添加wangEditor 5富文本编辑器支持

MantisBT自带的编辑器可以说是非常的简单了,可以添加一个富文本编辑器,这样就可以实现新建一个问题之后把该问题当作任务列表或日志记录来用。

经过一番选型,最后选择了开源简单的wangEditor 5

这里就不使用CDN了,首先将index.js文件放入/js路径下,然后将CSS文件改个名字如we_style.css放入/css/路径下,并编辑/css/default.css文件,添加以下样式:

获取单独的JS/CSS文件的方法,可以参考官方文档:https://www.wangeditor.com/v5/installation.html


引入JS文件与CSS文件

修改core/html_api.php文件,找到html_javascript_link( 'common.js' );在下方添加:

初始化编辑器

由于MantisBT的安全性设计,禁止行内JS执行,所以单独写成文件并加载。

we_init.js内容如下:

将编辑器添加到页面中

这里修改的文件和地方比较多,且会修改输出,可能会使系统安全性降低,请酌情使用。

bug_report_page.php中找到如下代码:

修改为:

bug_update_page.php 中找到如下代码:

修改为:

bug_view_inc.php 找到如下代码:

修改为:

bugnote_add_inc.php找到如下代码:

修改为:

bugnote_edit_page.php找到如下代码:

修改为:

bugnote_view_inc.php找到如下代码:

修改为:

这样就可以在提交问题、添加注释、修改注释等页面都使用富文本编辑器。

同时显示这些文本的区域都有加载对应的样式。

 

添加highlight.js支持

有了wangEditor 5,在编辑器中高亮代码是相当舒适了,不过也还是把显示页面也加上高亮支持,虽然两个的高亮样式不同,有总比没有强。

这里就使用highlight.js来渲染高亮。可以无缝跟wangEditor 5的代码块衔接。

还是将JS/CSS文件放入js/css/目录当中,当然还是别忘了给CSS文件改个名。

修改html_api.php文件:

最后在we_init.js文件中,初始化一下就OK了,不生效的话就看一下文件的加载顺序。

 

版权声明
转载保留版权: 大D技研室 | 《MantisBT的配置与添加富文本编辑器wangEditor 5》
本文链接地址:https://www.dadclab.com/archives/7834.jiecao
转载须知:如果您需要转载本文,请将版权信息,版权授权方式,以及本文的链接地址注明,谢谢合作。
本文被贴上了: , , 标签