View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update | 
|---|---|---|---|---|---|
| 0011951 | mantisbt | custom fields | public | 2010-05-21 17:42 | 2012-08-22 18:12 | 
| Reporter | Sergiodf | Assigned To | atrol | ||
| Priority | immediate | Severity | block | Reproducibility | always | 
| Status | closed | Resolution | duplicate | ||
| Product Version | 1.2.1 | ||||
| Summary | 0011951: Bug report page ask for custom fields not required nor displayed | ||||
| Description | After upgrading to v1.2.1, we were unable to report bugs anymore: after submitting a new bug, an error is shown saying a custom field was not completed.  | ||||
| Tags | No tags attached. | ||||
| Attached Files |  11951.diff (1,889 bytes)   
 
--- C:/Documents and Settings/SDelFranco/Escritorio/mantis/mantisbt-1.2.1-official/bug_report.php	Fri Apr 23 14:28:34 2010
+++ H:/mantis/bug_report.php	Fri May 21 18:38:16 2010
@@ -104,16 +104,23 @@
 		$t_def = custom_field_get_definition( $t_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_report'] ||
-				$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 ) ) {
+		if (	$t_def['require_report']
+				&& (
+					$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
+				) && !gpc_isset_custom_field( $t_id, $t_def['type'] )
+			) {
 			error_parameters( lang_get_defaulted( custom_field_get_field( $t_id, 'name' ) ) );
 			trigger_error( ERROR_EMPTY_FIELD, ERROR );
 		}
-		if ( !custom_field_validate( $t_id, gpc_get_custom_field( "custom_field_$t_id", $t_def['type'], NULL ) ) ) {
+		if (	$t_def['display_report']
+				&& !custom_field_validate(
+						$t_id,
+						gpc_get_custom_field( "custom_field_$t_id", $t_def['type'], NULL )
+					) 
+		) {
 			error_parameters( lang_get_defaulted( custom_field_get_field( $t_id, 'name' ) ) );
 			trigger_error( ERROR_CUSTOM_FIELD_INVALID_VALUE, ERROR );
 		}
@@ -136,7 +143,7 @@
 	# Handle custom field submission
 	foreach( $t_related_custom_field_ids as $t_id ) {
 		# Do not set custom field value if user has no write access.
-		if( !custom_field_has_write_access( $t_id, $t_bug_id ) ) {
+		if( !$t_def['display_report'] || !custom_field_has_write_access( $t_id, $t_bug_id ) ) {
 			continue;
 		}
 
 | ||||