Bug管理工具之Mantis_配置篇
角色
管理员、经理、开发人员、修改人员、报告人员、查看人员,权限从大到小递减。
分配:
My View Settings 'assigned' => '1', 'unassigned' => '2', 'reported' => '3', 'resolved' => '4', 'recent_mod' => '5', 'monitored' => '6', 'feedback' => '0', 'verify' => '0'
中文显示
查找:
$g_default_language //新增用户默认语言设置; $g_fallback_language 都修改为 = 'chinese_simplified';
统计报表--打印报告
查找: <?php html_page_top1( ) ?> <?php html_head_end( ) ?> <?php html_body_begin( ) ?> 修改为: <?php html_page_top1( ) ?> <?php html_page_top2( ) ?> <?php html_head_end( ) ?> <?php html_body_begin( ) ?> <?php print_summary_menu('print_all_bug_page.php') ?>
邮件发送
No1 修改config_defaults_inc.php $g_enable_email_notification=’on’; //默认为on,放这里是为了说明如何禁止邮件提醒,禁止邮件提醒后,用户不能注册,新建用户为空密码; $g_phpMailer_method=2; //选择发送方式,0 – mail(), 1 – sendmail 2 – SMTP. Default is 0; $g_smtp_host = 'smtp.sina.com';//smtp服务器地址 ,163的免费邮箱已经在2007年不使用smtp了 $g_smtp_username = ‘用户名’; //邮箱的用户名 $g_smtp_password = ‘密码’; //邮箱的密码 $g_from_email ='kk_ls@sina.com';//‘发送邮件方’; $g_return_path_email= 'kk_ls@sina.com';//’回复邮件方’; $g_from_name=’发送邮件者名称’; //我使用默认 $g_email_padding_length = 1; //具体不知道干嘛,有文章说系统竟然连续发送N封邮件,改小了就好了,但是我没遇到,还是默认的28; No2 修改apache的httpd.conf Listen 10.0.2.15:8080//加入ip,使得发邮件时可以直接访问到这个mantis的地址。不加,默认是localhost:8080显示的 No3 其他修改 $g_administrator_email = 'kk_ls@sina.com'; $g_webmaster_email = 'kk_ls@sina.com';//左下角邮箱地址的更改 $g_window_title = '流柯_BLOG-Bug跟踪系统';//标题栏显示 $g_show_realname = ON;//显示真实姓名,只有在页面左上方,默认OFF $g_allowed_files ='txt,jpg,jepg,gif,bmp,doc';#设置允许上传的附件类型,默认空,我改了 Mantis Sponsorship Settings 是进行广告赞助的设置,一般不用改
系统时间
安装好的Mantis会跟服务器差8个小时,可进行修改:
在config_ini.php中加一句:
putenv("TZ=Asia/Shanghai");
如果方法不可以的话,修改php.ini的date.timezone = PRC
上传文件
在mantis目录下增加一个文件夹upload,用来保存上传的文件。修改config_defaults_inc.php
$g_file_upload_method =DISK;//默认是DATABASE,保存在数据库中,现在改为磁盘上
$g_absolute_path_default_upload_folder = 'C:\Program Files\mantisbt-1.1.8\upload';//将upload的位置给出,
如果是Unix/Linux类型的服务器上,uploads后面一定要有"/",还要注意这个目录权限一定要是777.
$g_show_attachment_indicator = ON; //在页面显示上传文件的标识,在看buglist的时候就可以看到
$g_max_file_size = 5000000; //上传文件大小限制,决定这个的还有服务器php.ini里面的设置.
$g_disallowed_files = 'php,php3,phtml,html,class,java,exe'; //filetype NOT allowed,默认是空的
注册时的认证码
申请注册新用户的时候会在右边有一个验证码,就是防垃圾程序注册用的.一般都在内网架设的时候显然这个是多余的.于是可以去掉这个验证码.同样,在config_inc.php加入.
$g_signup_use_captcha = OFF;//默认是ON
JPGraph
默认情况下,Mantis的图形报表是关闭的,需要安装JPGraph模块。
JPGraph 1.x 版本是针对php4,2.x 是针对php5的。
mantisbt-1.1.8已经自带了graphs文件夹,但是缺少很多的文件,因此,我下载了jpgraph-2.3.4,从中拷贝了相关的缺失文件。
No1 修改config_inc.php
查找:
$g_use_jpgraph = OFF;
#$g_jpgraph_path = '.' . DIRECTORY_SEPARATOR . 'jpgraph' . DIRECTORY_SEPARATOR; # dont forget the ending slash!
修改为:
$g_use_jpgraph = ON;
$g_jpgraph_path = '.' . DIRECTORY_SEPARATOR . 'graphs' . DIRECTORY_SEPARATOR; # dont forget the ending slash!
'jpgraph'--> 'graphs' ,是使之与文件夹名相同
No2 修改php.ini
查找“;extension=php_gd2.dll” 将前面的分号删除,这个模块是JPGraph在显示图表和进行汉字编码转换是所必须的。
No3 JPGraph的中文显示
打开$mantis\core\graph_api.php,查找:graph_get_font(),在其中添加一行:'chinese_gbk' => FF_SIMSUN
在config_inc.php文件中添加:$g_graph_font = 'chinese_gbk';
打开$JPGraph\src\jpg-config.inc.php,查找DEFINE('CHINESE_TTF_FONT','bkai00mp.ttf');
改为 DEFINE('CHINESE_TTF_FONT','simsun.ttc');
发现报表显示还是乱码!!
修改\graphs\jpgraph_ttf.inc.php,查找:
elseif( $aFF === FF_SIMSUN ) {
// Do Chinese conversion
if( $this->g2312 == null ) {
include_once 'jpgraph_gb2312.php' ;
$this->g2312 = new GB2312toUTF8();
}
return $this->g2312->gb2utf8($aTxt);
}
改为:
elseif( $aFF === FF_SIMSUN ) {
// Do Chinese conversion
/*
if( $this->g2312 == null ) {
include_once 'jpgraph_gb2312.php' ;
$this->g2312 = new GB2312toUTF8();
}
return $this->g2312->gb2utf8($aTxt);
*/
return $aTxt;
}
这样改实际是有些问题,如果mantis中有部分用户的语言选择为chinese_simplified,另一部分选择为chinese_simplified_utf8就不行了,总会有部分人报表出现乱码。所以小组一定要统一。
中文导出的乱码(未尝试)
.(这里借鉴http://micki.blogbus.com/logs/38993106.html),但是有部分更改以适应新版函数变化.
在安装MySql和Mantis时,如果所有编码都采用UTF8,并且在登入Mantis后将个人语言修改为简体中文后,然后查看问题,在做CSV和Excel导出时,可能你会发现导出文件内容显示为乱码。
No1 解决CVS导出乱码:
找到Mantis根目录下csv_export.php,进行修改:
添加函数:
function expChangeCode($str)
{
return mb_convert_encoding($str,"CP936","UTF-8");
}
然后修改:
将echo $t_header 改成 echo expChangeCode($t_header);
将echo csv_escape_string($t_value); 改成 echo expChangeCode(csv_escape_string($t_value));
将echo $t_function( $t_row->$t_column ); 改成echo expChangeCode($t_function( $t_row->$t_column ));
No2 解决Excel导出乱码
找到Mantis根目录下core/excel_api.php,进行修改:
将$t_ret .= utf8_encode( $t_value );改成$t_ret .= $t_value;
也就是将utf8_encode函数去掉,也可以这样改:
将$t_value = str_replace( ">", ">", $t_value );改为$t_ret = str_replace( ">", ">", $t_value );
然后将$t_ret .= utf8_encode( $t_value );这句删除或者注释掉。
Excel部分我没找到对应函数,所以没有去动.但是尊重原文也复制了过来.
重新启动Apache服务器即可生效。