View Issue Details

IDProjectCategoryView StatusLast Update
0005263mantisbtfeaturepublic2009-01-15 11:25
Reporterswebster Assigned Tothraxisp  
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Fixed in Version1.2.0a3 
Summary0005263: Add the ability to report issues in unreleased product versions
Description

It would be handy to be able to report issues in as-yet unreleased versions of a product tracked by Mantis. This is important for products that undergo a cycle of develop/test/review stages during the development of a given version.

Additional Information

Victor suggests a new config option that allows setting an access level threshold above which the user should be able to report issues against unreleased versions.

$g_report_issues_for_unreleased_versions_threshold = DEVELOPER;

http://forums.mantisbt.org/viewtopic.php?p=66

TagsNo tags attached.
Attached Files
all-in-one.patch (5,298 bytes)   
Index: bug_report_advanced_page.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/bug_report_advanced_page.php,v
retrieving revision 1.45
diff -u -r1.45 bug_report_advanced_page.php
--- bug_report_advanced_page.php	24 Oct 2004 19:04:36 -0000	1.45
+++ bug_report_advanced_page.php	19 Feb 2005 16:09:17 -0000
@@ -251,6 +251,11 @@
 			|| ( ( AUTO == config_get( 'show_product_version' ) )
 						&& ( count( version_get_all_rows( $t_project_id ) ) > 0 ) );
 	if ( $t_show_version ) {
+		$t_product_version_released_mask = VERION_RELEASED;
+		
+		if (access_has_project_level( config_get( 'report_issues_for_unreleased_versions_threshold' ) ) ) {
+			$t_product_version_released_mask = VERSION_ALL;
+		}
 ?>
 <!-- Product Version -->
 <tr <?php echo helper_alternate_class() ?>>
@@ -259,7 +264,7 @@
 	</td>
 	<td>
 		<select tabindex="9" name="product_version">
-			<?php print_version_option_list( $f_product_version, $t_project_id, VERSION_RELEASED ) ?>
+			<?php print_version_option_list( $f_product_version, $t_project_id, $t_product_version_released_mask ) ?>
 		</select>
 	</td>
 </tr>
Index: bug_report_page.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/bug_report_page.php,v
retrieving revision 1.48
diff -u -r1.48 bug_report_page.php
--- bug_report_page.php	24 Oct 2004 19:28:46 -0000	1.48
+++ bug_report_page.php	19 Feb 2005 16:09:26 -0000
@@ -176,6 +176,11 @@
 			|| ( ( AUTO == config_get( 'show_product_version' ) )
 						&& ( count( version_get_all_rows( $t_project_id ) ) > 0 ) );
 	if ( $t_show_version ) {
+		$t_product_version_released_mask = VERION_RELEASED;
+		
+		if (access_has_project_level( config_get( 'report_issues_for_unreleased_versions_threshold' ) ) ) {
+			$t_product_version_released_mask = VERSION_ALL;
+		}
 ?>
 <!-- Product Version -->
 <tr <?php echo helper_alternate_class() ?>>
@@ -184,7 +189,7 @@
 	</td>
 	<td>
 		<select tabindex="9" name="product_version">
-			<?php print_version_option_list( $f_product_version, $t_project_id, VERSION_RELEASED ) ?>
+			<?php print_version_option_list( $f_product_version, $t_project_id, $t_product_version_released_mask ) ?>
 		</select>
 	</td>
 </tr>
Index: bug_update_advanced_page.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/bug_update_advanced_page.php,v
retrieving revision 1.83
diff -u -r1.83 bug_update_advanced_page.php
--- bug_update_advanced_page.php	13 Oct 2004 23:35:07 -0000	1.83
+++ bug_update_advanced_page.php	19 Feb 2005 16:12:27 -0000
@@ -333,10 +333,15 @@
 	</td>
 	<td>
 		<?php 
-			if ( $t_show_version ) { 
+			if ( $t_show_version ) {
+				$t_product_version_released_mask = VERION_RELEASED;
+				
+				if (access_has_project_level( config_get( 'report_issues_for_unreleased_versions_threshold' ) ) ) {
+					$t_product_version_released_mask = VERSION_ALL;
+				} 
 		?>
 		<select name="version">
-			<?php print_version_option_list( $t_bug->version, $t_bug->project_id, VERSION_RELEASED ) ?>
+			<?php print_version_option_list( $t_bug->version, $t_bug->project_id, $t_product_version_released_mask ) ?>
 		</select>
 		<?php
 			}else{
Index: bug_update_page.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/bug_update_page.php,v
retrieving revision 1.87
diff -u -r1.87 bug_update_page.php
--- bug_update_page.php	13 Oct 2004 23:35:07 -0000	1.87
+++ bug_update_page.php	19 Feb 2005 16:13:03 -0000
@@ -251,6 +251,11 @@
 			|| ( ( AUTO == config_get( 'show_product_version' ) ) 
 						&& ( count( version_get_all_rows( $t_bug->project_id ) ) > 0 ) );
 	if ( $t_show_version ) { 
+				$t_product_version_released_mask = VERION_RELEASED;
+				
+				if (access_has_project_level( config_get( 'report_issues_for_unreleased_versions_threshold' ) ) ) {
+					$t_product_version_released_mask = VERSION_ALL;
+				} 
 ?>
 	<!-- Product Version -->
 	<td class="category">
@@ -258,7 +263,7 @@
 	</td>
 	<td>
 		<select name="version">
-			<?php print_version_option_list( $t_bug->version, $t_bug->project_id, VERSION_RELEASED ) ?>
+			<?php print_version_option_list( $t_bug->version, $t_bug->project_id, $t_product_version_released_mask ) ?>
 		</select>
 	</td>
 </tr>
Index: config_defaults_inc.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/config_defaults_inc.php,v
retrieving revision 1.225
diff -u -r1.225 config_defaults_inc.php
--- config_defaults_inc.php	11 Dec 2004 07:21:51 -0000	1.225
+++ config_defaults_inc.php	19 Feb 2005 16:18:16 -0000
@@ -941,6 +941,9 @@
 	# access level needed to re-open bugs
 	$g_reopen_bug_threshold			= DEVELOPER;
 
+	# access level needed to assign bugs to unreleased product versions
+	$g_report_issues_for_unreleased_versions_threshold = DEVELOPER;
+
 	# this array sets the access thresholds needed to enter each status listed.
 	# if a status is not listed, it falls back to $g_update_bug_status_threshold
 	# example: $g_set_status_threshold = array( ACKNOWLEDGED => MANAGER, CONFIRMED => DEVELOPER, CLOSED => MANAGER );
all-in-one.patch (5,298 bytes)   
bug_report_advanced_page.php.patch (1,177 bytes)   
Index: bug_report_advanced_page.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/bug_report_advanced_page.php,v
retrieving revision 1.45
diff -u -r1.45 bug_report_advanced_page.php
--- bug_report_advanced_page.php	24 Oct 2004 19:04:36 -0000	1.45
+++ bug_report_advanced_page.php	19 Feb 2005 16:09:17 -0000
@@ -251,6 +251,11 @@
 			|| ( ( AUTO == config_get( 'show_product_version' ) )
 						&& ( count( version_get_all_rows( $t_project_id ) ) > 0 ) );
 	if ( $t_show_version ) {
+		$t_product_version_released_mask = VERION_RELEASED;
+		
+		if (access_has_project_level( config_get( 'report_issues_for_unreleased_versions_threshold' ) ) ) {
+			$t_product_version_released_mask = VERSION_ALL;
+		}
 ?>
 <!-- Product Version -->
 <tr <?php echo helper_alternate_class() ?>>
@@ -259,7 +264,7 @@
 	</td>
 	<td>
 		<select tabindex="9" name="product_version">
-			<?php print_version_option_list( $f_product_version, $t_project_id, VERSION_RELEASED ) ?>
+			<?php print_version_option_list( $f_product_version, $t_project_id, $t_product_version_released_mask ) ?>
 		</select>
 	</td>
 </tr>
bug_report_page.php.patch (1,132 bytes)   
Index: bug_report_page.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/bug_report_page.php,v
retrieving revision 1.48
diff -u -r1.48 bug_report_page.php
--- bug_report_page.php	24 Oct 2004 19:28:46 -0000	1.48
+++ bug_report_page.php	19 Feb 2005 16:09:26 -0000
@@ -176,6 +176,11 @@
 			|| ( ( AUTO == config_get( 'show_product_version' ) )
 						&& ( count( version_get_all_rows( $t_project_id ) ) > 0 ) );
 	if ( $t_show_version ) {
+		$t_product_version_released_mask = VERION_RELEASED;
+		
+		if (access_has_project_level( config_get( 'report_issues_for_unreleased_versions_threshold' ) ) ) {
+			$t_product_version_released_mask = VERSION_ALL;
+		}
 ?>
 <!-- Product Version -->
 <tr <?php echo helper_alternate_class() ?>>
@@ -184,7 +189,7 @@
 	</td>
 	<td>
 		<select tabindex="9" name="product_version">
-			<?php print_version_option_list( $f_product_version, $t_project_id, VERSION_RELEASED ) ?>
+			<?php print_version_option_list( $f_product_version, $t_project_id, $t_product_version_released_mask ) ?>
 		</select>
 	</td>
 </tr>
bug_report_page.php.patch (1,132 bytes)   
bug_update_advanced_page.php.patch (1,001 bytes)   
Index: bug_update_advanced_page.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/bug_update_advanced_page.php,v
retrieving revision 1.83
diff -u -r1.83 bug_update_advanced_page.php
--- bug_update_advanced_page.php	13 Oct 2004 23:35:07 -0000	1.83
+++ bug_update_advanced_page.php	19 Feb 2005 16:12:27 -0000
@@ -333,10 +333,15 @@
 	</td>
 	<td>
 		<?php 
-			if ( $t_show_version ) { 
+			if ( $t_show_version ) {
+				$t_product_version_released_mask = VERION_RELEASED;
+				
+				if (access_has_project_level( config_get( 'report_issues_for_unreleased_versions_threshold' ) ) ) {
+					$t_product_version_released_mask = VERSION_ALL;
+				} 
 		?>
 		<select name="version">
-			<?php print_version_option_list( $t_bug->version, $t_bug->project_id, VERSION_RELEASED ) ?>
+			<?php print_version_option_list( $t_bug->version, $t_bug->project_id, $t_product_version_released_mask ) ?>
 		</select>
 		<?php
 			}else{
bug_update_page.php.patch (1,113 bytes)   
Index: bug_update_page.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/bug_update_page.php,v
retrieving revision 1.87
diff -u -r1.87 bug_update_page.php
--- bug_update_page.php	13 Oct 2004 23:35:07 -0000	1.87
+++ bug_update_page.php	19 Feb 2005 16:13:03 -0000
@@ -251,6 +251,11 @@
 			|| ( ( AUTO == config_get( 'show_product_version' ) ) 
 						&& ( count( version_get_all_rows( $t_bug->project_id ) ) > 0 ) );
 	if ( $t_show_version ) { 
+				$t_product_version_released_mask = VERION_RELEASED;
+				
+				if (access_has_project_level( config_get( 'report_issues_for_unreleased_versions_threshold' ) ) ) {
+					$t_product_version_released_mask = VERSION_ALL;
+				} 
 ?>
 	<!-- Product Version -->
 	<td class="category">
@@ -258,7 +263,7 @@
 	</td>
 	<td>
 		<select name="version">
-			<?php print_version_option_list( $t_bug->version, $t_bug->project_id, VERSION_RELEASED ) ?>
+			<?php print_version_option_list( $t_bug->version, $t_bug->project_id, $t_product_version_released_mask ) ?>
 		</select>
 	</td>
 </tr>
bug_update_page.php.patch (1,113 bytes)   
config_defaults_inc.php.patch (875 bytes)   
Index: config_defaults_inc.php
===================================================================
RCS file: /cvsroot/mantisbt/mantisbt/config_defaults_inc.php,v
retrieving revision 1.225
diff -u -r1.225 config_defaults_inc.php
--- config_defaults_inc.php	11 Dec 2004 07:21:51 -0000	1.225
+++ config_defaults_inc.php	19 Feb 2005 16:18:16 -0000
@@ -941,6 +941,9 @@
 	# access level needed to re-open bugs
 	$g_reopen_bug_threshold			= DEVELOPER;
 
+	# access level needed to assign bugs to unreleased product versions
+	$g_report_issues_for_unreleased_versions_threshold = DEVELOPER;
+
 	# this array sets the access thresholds needed to enter each status listed.
 	# if a status is not listed, it falls back to $g_update_bug_status_threshold
 	# example: $g_set_status_threshold = array( ACKNOWLEDGED => MANAGER, CONFIRMED => DEVELOPER, CLOSED => MANAGER );

Activities

swebster

swebster

2005-02-19 11:30

reporter   ~0009343

Last edited: 2005-02-19 11:32

Uploaded patches that seem to resolve this issue.

As this is my first patch please forgive me if I've missed something in some obscure corner of Mantis. I also wasn't sure whether to create per-file patches or an all-in-one patch, so I've done both ;o)

swebster

swebster

2005-02-19 11:41

reporter   ~0009344

Last edited: 2005-02-19 11:43

As an afterthought, should probably make the version field read-only on the bug update pages if the following conditions are met?

  1. The bug is filed against an unreleased product version
  2. The user level is less than that specified in $g_report_issues_for_unreleased_versions_threshold

Otherwise we'll have people trying to update bugs and not having the appropriate user-level to save them against the neccesary product version.

Any thoughts?

swebster

swebster

2005-02-19 11:56

reporter   ~0009345

I should also add that these patches were created against the RELEASE_0_19_2_20041211 branch.

danielm

danielm

2008-04-25 05:37

reporter   ~0017687

This bug has become more of an issue now that the roadmap has been implemented.

Previously it was easy to mark every version as released so that bugs could be reported against that version.

However Because the roadmap only shows unreleased versions you cannot use the aforementioned approach and the roadmap at the same time.

thraxisp

thraxisp

2009-01-14 23:12

reporter   ~0020627

ref http://git.mantisbt.org/?p=mantisbt.git;a=commit;h=7655e97fed1a3fcdd8c0d817791e895b683f3590

Related Changesets

MantisBT: master 7655e97f

2009-01-14 23:05

thraxisp


Details Diff
fixed bug 0005263: Add the ability to report issues in unreleased product
- based on patch submitted by swebster
Affected Issues
0005263
mod - bug_update_advanced_page.php Diff File
mod - config_defaults_inc.php Diff File
mod - bug_report_advanced_page.php Diff File
mod - bug_update_page.php Diff File
mod - bug_report_page.php Diff File