diff options
author | Gervase Markham <gerv@gerv.net> | 2015-03-30 19:53:57 +0200 |
---|---|---|
committer | Gervase Markham <gerv@gerv.net> | 2015-03-30 19:53:57 +0200 |
commit | 79ec29975ac8d1a4f49b83ed404a1ee04c33b73c (patch) | |
tree | fd747279bdfb8f3857e7e64468c0915649319523 /Bugzilla/Config | |
parent | 2c82105b0fed5d6739111c5de8dba063b01ab446 (diff) | |
download | bugzilla-79ec29975ac8d1a4f49b83ed404a1ee04c33b73c.tar.gz bugzilla-79ec29975ac8d1a4f49b83ed404a1ee04c33b73c.tar.xz |
Bug 1007605 - Make FIXED non-fixed, by changing noresolveonopenblockers to define what the fixed resolution is. r,a=glob
Diffstat (limited to 'Bugzilla/Config')
-rw-r--r-- | Bugzilla/Config/BugChange.pm | 13 | ||||
-rw-r--r-- | Bugzilla/Config/Common.pm | 16 |
2 files changed, 25 insertions, 4 deletions
diff --git a/Bugzilla/Config/BugChange.pm b/Bugzilla/Config/BugChange.pm index 0acdc0ce4..2a225b794 100644 --- a/Bugzilla/Config/BugChange.pm +++ b/Bugzilla/Config/BugChange.pm @@ -31,6 +31,10 @@ sub get_param_list { @closed_bug_statuses = @current_closed_states if scalar(@current_closed_states); }; + my $resolution_field = Bugzilla::Field->new({ name => 'resolution', cache => 1 }); + # The empty resolution is included - it represents "no value" + my @resolutions = map {$_->name} @{ $resolution_field->legal_values }; + my @param_list = ( { name => 'duplicate_or_move_bug_status', @@ -71,10 +75,13 @@ sub get_param_list { }, { - name => 'noresolveonopenblockers', - type => 'b', - default => 0, + name => 'resolution_forbidden_with_open_blockers', + type => 's', + choices => \@resolutions, + default => '', + checker => \&check_resolution, } ); + return @param_list; } diff --git a/Bugzilla/Config/Common.pm b/Bugzilla/Config/Common.pm index 52a2f8f11..95b1e3189 100644 --- a/Bugzilla/Config/Common.pm +++ b/Bugzilla/Config/Common.pm @@ -28,7 +28,7 @@ use parent qw(Exporter); check_ip check_mail_delivery_method check_notification check_bug_status check_smtp_auth check_theschwartz_available check_maxattachmentsize check_email check_smtp_ssl - check_comment_taggers_group check_smtp_server + check_comment_taggers_group check_smtp_server check_resolution ); # Checking functions for the various values @@ -164,6 +164,18 @@ sub check_bug_status { return ""; } +sub check_resolution { + my $resolution = shift; + my $resolution_field = Bugzilla::Field->new({ name => 'resolution', cache => 1 }); + # The empty resolution is included - it represents "no value" + my @resolutions = map {$_->name} @{ $resolution_field->legal_values }; + + if (!grep($_ eq $resolution, @resolutions)) { + return "Must be blank or a valid resolution: one of " . join(', ', @resolutions); + } + return ""; +} + sub check_group { my $group_name = shift; return "" unless $group_name; @@ -464,6 +476,8 @@ valid group is provided. =item check_bug_status +=item check_resolution + =item check_shadowdb =item check_smtp_server |