본문 바로가기
Infra/(BTS) Mantis

Mantis Customizing 진행(1/5)

by 화뉘 2011. 1. 5.

Custom Field 추가 시, 일부 문제 발생

Custom Field 만든 후, Type을 List로 하고, Report Issue에서 Issue 작성 후, [Submit Report] 클릭 시

"A necessary field "Custom Field" was empty. Please recheck your inputs"

메시지 출력

생각엔 Possible Values를 여러 개 입력 시, 발생하는 문제같음

현재 Type을 String이나, Checkbox로 설정 후, Possible Values를 1개로 설정했을 경우에는 문제 없이 동작함

그래서 Unit Test 유무를 Yes 항목을 Check 하는 방식으로 변경함

or
bug_update.php
//////////////////////////////////////////////////////////////////////////
@@ -137,19 +137,19 @@
    continue;
   }
 
+  $t_old_custom_field_value = custom_field_get_value( $t_id, $f_bug_id );
   # Produce an error if the field is required but wasn't posted
-  if ( !gpc_isset_custom_field( $t_id, $t_def['type'] ) &&
-   ( $t_def['require_' . $t_custom_status_label] ||
-    $t_def['type'] == CUSTOM_FIELD_TYPE_ENUM ||
-    $t_def['type'] == CUSTOM_FIELD_TYPE_LIST ||
-    $t_def['type'] == CUSTOM_FIELD_TYPE_MULTILIST ||
-    $t_def['type'] == CUSTOM_FIELD_TYPE_RADIO ) ) {
-   error_parameters( lang_get_defaulted( custom_field_get_field( $t_id, 'name' ) ) );
-   trigger_error( ERROR_EMPTY_FIELD, ERROR );
+  if ( $t_def['require_' . $t_custom_status_label]
+   && $t_def['type'] != CUSTOM_FIELD_TYPE_CHECKBOX
+   && !gpc_isset_custom_field($t_id, $t_def['type'])
+   ) {
+   if(!isset($t_old_custom_field_value)) {
+    error_parameters( lang_get_defaulted( custom_field_get_field( $t_id, 'name' ) ) );
+    trigger_error( ERROR_EMPTY_FIELD, ERROR );
+   }
   }
 
   $t_new_custom_field_value = gpc_get_custom_field( "custom_field_$t_id", $t_def['type'], '' );
-  $t_old_custom_field_value = custom_field_get_value( $t_id, $f_bug_id );
 
   # Don't update the custom field if the new value both matches the old value and is valid
   # This ensures that changes to custom field validation will force the update of old invalid custom field values


/////////////////////////////////////////////////////////////////////////////////////////////////////

'Infra > (BTS) Mantis' 카테고리의 다른 글

Mantis Customizing 진행(1/6)  (0) 2011.01.06
설정 변경 파일 정보  (0) 2011.01.06
Mantis Customizing 진행(1/4)  (0) 2011.01.04
Mantis Customizing 진행(1/3)  (0) 2011.01.03
Profile(Test Environment) 권한 설정  (0) 2011.01.03

댓글