summaryrefslogtreecommitdiffstats
path: root/extensions/FlagDefaultRequestee
diff options
context:
space:
mode:
authorByron Jones <bjones@mozilla.com>2013-07-18 09:07:57 +0200
committerByron Jones <bjones@mozilla.com>2013-07-18 09:07:57 +0200
commitcc20ecfa1b8c151690e8d12c8ad5c544fa1a4a5a (patch)
tree3202a2614139d143131fa5b900a928ec64ce6be3 /extensions/FlagDefaultRequestee
parent1551a42f3337482bd6aaa1493d987e05d704f128 (diff)
downloadbugzilla-cc20ecfa1b8c151690e8d12c8ad5c544fa1a4a5a.tar.gz
bugzilla-cc20ecfa1b8c151690e8d12c8ad5c544fa1a4a5a.tar.xz
Bug 804708: Add a 'Review' extension to customise the review flag for Mozilla's workflow (make requestee/reviewer mandatory, provide review suggestions, etc)
Diffstat (limited to 'extensions/FlagDefaultRequestee')
-rw-r--r--extensions/FlagDefaultRequestee/Extension.pm16
-rw-r--r--extensions/FlagDefaultRequestee/template/en/default/hook/global/user-error-errors.html.tmpl13
2 files changed, 23 insertions, 6 deletions
diff --git a/extensions/FlagDefaultRequestee/Extension.pm b/extensions/FlagDefaultRequestee/Extension.pm
index b444bce49..9c15f741a 100644
--- a/extensions/FlagDefaultRequestee/Extension.pm
+++ b/extensions/FlagDefaultRequestee/Extension.pm
@@ -10,6 +10,7 @@ package Bugzilla::Extension::FlagDefaultRequestee;
use strict;
use base qw(Bugzilla::Extension);
+use Bugzilla::Error;
use Bugzilla::FlagType;
use Bugzilla::User;
@@ -94,29 +95,32 @@ sub template_before_process {
sub flagtype_end_of_create {
my ($self, $args) = @_;
- _set_default_requestee($args->{id});
+ _set_default_requestee($args->{type});
}
sub flagtype_end_of_update {
my ($self, $args) = @_;
- _set_default_requestee($args->{id});
+ _set_default_requestee($args->{type});
}
sub _set_default_requestee {
- my $type_id = shift;
- my $input = Bugzilla->input_params;
- my $dbh = Bugzilla->dbh;
+ my $type = shift;
+ my $input = Bugzilla->input_params;
+ my $dbh = Bugzilla->dbh;
my $requestee_login = $input->{'default_requestee'};
my $requestee_id = undef;
if ($requestee_login) {
+ if ($type->name eq 'review') {
+ ThrowUserError("flag_default_requestee_review");
+ }
my $requestee = Bugzilla::User->check($requestee_login);
$requestee_id = $requestee->id;
}
$dbh->do("UPDATE flagtypes SET default_requestee = ? WHERE id = ?",
- undef, $requestee_id, $type_id);
+ undef, $requestee_id, $type->id);
}
##################
diff --git a/extensions/FlagDefaultRequestee/template/en/default/hook/global/user-error-errors.html.tmpl b/extensions/FlagDefaultRequestee/template/en/default/hook/global/user-error-errors.html.tmpl
new file mode 100644
index 000000000..3fbd0458c
--- /dev/null
+++ b/extensions/FlagDefaultRequestee/template/en/default/hook/global/user-error-errors.html.tmpl
@@ -0,0 +1,13 @@
+[%# This Source Code Form is subject to the terms of the Mozilla Public
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ #
+ # This Source Code Form is "Incompatible With Secondary Licenses", as
+ # defined by the Mozilla Public License, v. 2.0.
+ #%]
+
+[% IF error == "flag_default_requestee_review" %]
+ [% title = "Review flag not supported" %]
+ You cannot use the 'Default Requestee' field for the review flag.
+ Instead set the 'Suggested Reviewers' on the Product or Component edit forms.
+[% END %]