Skip to content

Commit

Permalink
Fixes #6792: Option to update the severity of selected bugs.
Browse files Browse the repository at this point in the history
  • Loading branch information
vboctor committed Nov 1, 2009
1 parent 2c4cdbd commit 0d3f955
Show file tree
Hide file tree
Showing 3 changed files with 93 additions and 1 deletion.
88 changes: 88 additions & 0 deletions bug_actiongroup_update_severity_inc.php
@@ -0,0 +1,88 @@
<?php
# MantisBT - a php based bugtracking system

# MantisBT is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# MantisBT is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with MantisBT. If not, see <http://www.gnu.org/licenses/>.

/**
* @package MantisBT
* @copyright Copyright (C) 2000 - 2002 Kenzaburo Ito - kenito@300baud.org
* @copyright Copyright (C) 2002 - 2009 MantisBT Team - mantisbt-dev@lists.sourceforge.net
* @link http://www.mantisbt.org
*/

/**
* Prints the title for the custom action page.
*/
function action_update_severity_print_title() {
echo '<tr class="form-title">';
echo '<td colspan="2">';
echo lang_get( 'update_severity_title' );
echo '</td></tr>';
}

/**
* Prints the field within the custom action form. This has an entry for
* every field the user need to supply + the submit button. The fields are
* added as rows in a table that is already created by the calling code.
* A row has two columns.
*/
function action_update_severity_print_fields() {
echo '<tr class="row-1" valign="top"><td class="category">';
echo lang_get( 'update_severity_msg' );
echo '</td><td><select name="severity">';
print_enum_string_option_list( 'severity' );
echo '</select></td></tr>';
echo '<tr><td colspan="2"><center><input type="submit" class="button" value="' . lang_get( 'update_severity_button' ) . ' " /></center></td></tr>';
}

/**
* Validates the action on the specified bug id.
*
* @returns true Action can be applied.
* @returns array( bug_id => reason for failure )
*/
function action_update_severity_validate( $p_bug_id ) {
$f_severity = gpc_get_string( 'severity' );

$t_failed_validation_ids = array();

$t_update_severity_threshold = config_get( 'update_bug_threshold' );
$t_bug_id = $p_bug_id;

if ( bug_is_readonly( $t_bug_id ) ) {
$t_failed_validation_ids[$t_bug_id] = lang_get( 'actiongroup_error_issue_is_readonly' );
return $t_failed_validation_ids;
}

if ( !access_has_bug_level( $t_update_severity_threshold, $t_bug_id ) ) {
$t_failed_validation_ids[$t_bug_id] = lang_get( 'access_denied' );
return $t_failed_validation_ids;
}

return true;
}

/**
* Executes the custom action on the specified bug id.
*
* @param $p_bug_id The bug id to execute the custom action on.
*
* @returns true Action executed successfully.
* @returns array( bug_id => reason for failure )
*/
function action_update_severity_process( $p_bug_id ) {
$f_severity = gpc_get_string( 'severity' );
bug_set_field( $p_bug_id, 'severity', $f_severity );
return true;
}
1 change: 1 addition & 0 deletions core/print_api.php
Expand Up @@ -981,6 +981,7 @@ function print_all_bug_action_option_list() {
'RESOLVE' => lang_get( 'actiongroup_menu_resolve' ),
'SET_STICKY' => lang_get( 'actiongroup_menu_set_sticky' ),
'UP_PRIOR' => lang_get( 'actiongroup_menu_update_priority' ),
'EXT_UPDATE_SEVERITY' => lang_get( 'actiongroup_menu_update_severity' ),
'UP_STATUS' => lang_get( 'actiongroup_menu_update_status' ),
'UP_CATEGORY' => lang_get( 'actiongroup_menu_update_category' ),
'VIEW_STATUS' => lang_get( 'actiongroup_menu_update_view_status' ),
Expand Down
5 changes: 4 additions & 1 deletion lang/strings_english.txt
Expand Up @@ -42,6 +42,7 @@ $s_actiongroup_menu_delete = 'Delete';
$s_actiongroup_menu_resolve = 'Resolve';
$s_actiongroup_menu_update_priority = 'Update Priority';
$s_actiongroup_menu_update_status = 'Update Status';
$s_actiongroup_menu_update_severity = 'Update Severity';
$s_actiongroup_menu_update_view_status = 'Update View Status';
$s_actiongroup_menu_update_category = 'Update Category';
$s_actiongroup_menu_set_sticky = 'Set/Unset Sticky';
Expand Down Expand Up @@ -164,6 +165,9 @@ $s_view_status_group_bugs_button = 'Update View Status';
$s_set_sticky_group_bugs_button = 'Set/Unset Sticky';
$s_fixed_in_version_group_bugs_button = 'Update Fixed in Version';
$s_target_version_group_bugs_button = 'Update Target Version';
$s_update_severity_title = 'Update Severity';
$s_update_severity_msg = 'Choose issue severity';
$s_update_severity_button = 'Update Severity';

# print_all_bug_page.php : display selected issues
$s_hide_button = 'Display selected only';
Expand Down Expand Up @@ -1538,7 +1542,6 @@ $s_manage_user = 'Manage User';
# separators
$s_word_separator = '&#32;';


# admin pages
$s_install_information = 'MantisBT Installation Information';
$s_database_information = 'MantisBT Database Information';
Expand Down

0 comments on commit 0d3f955

Please sign in to comment.