限制 mantis 功能 , 只有被指派的 issue (bug) handler 才能更新狀態
目的: mantis 預設 handler 可處理任一 issue (bug), 修改程式功能, 限制只有被指派的 issue (bug) handler 才能更新狀態
註: 需回收 assign sponsor 權限給更高權限者, ex. , manager
mantis 版本 1.2.a03
開啟 root 目錄底下, 檔案: bug_change_status_page.php
搜尋
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | $t_status_label = str_replace( " ", "_", MantisEnum::getLabel( config_get( 'status_enum_string' ), $f_new_status ) ); 在這一行之前, 插入以下程式碼 /* 修改 -- 2009.04.20 */ /* 限制只有 owner 以及有權限的人(assign_sponsor)才可以 access*/ if (( $f_handler_id != NO_USER ) ) { if ( !access_has_bug_level( config_get( 'assign_sponsored_bugs_threshold' ), $f_bug_id ) ) { if ( access_has_bug_level( config_get( 'handle_sponsored_bugs_threshold' ), $f_bug_id, $f_handler_id ) ) { if (!(bug_get_field( $f_bug_id, 'handler_id' ) == auth_get_current_user_id() )) { ## 權限不足, stop trigger_error( ERROR_HANDLER_ACCESS_TOO_LOW, ERROR ); } } } } /* 修改 -- 2009.04.20 */ |