diff options
author | Dylan William Hardison <dylan@mozilla.com> | 2015-05-01 06:03:57 +0200 |
---|---|---|
committer | Dylan William Hardison <dylan@hardison.net> | 2015-05-01 06:03:57 +0200 |
commit | c3c2eccd987259a577108fd05f57dc809950b0e6 (patch) | |
tree | 44cbe5438ce68ae36d8f36c205e2e523dd3dd5db /Bugzilla/Bug.pm | |
parent | 0e68998f22b847d90753daac3808bedc4500cde6 (diff) | |
download | bugzilla-c3c2eccd987259a577108fd05f57dc809950b0e6.tar.gz bugzilla-c3c2eccd987259a577108fd05f57dc809950b0e6.tar.xz |
Bug 69267: Add the ability to deactivate keywords
r/a=glob
Diffstat (limited to 'Bugzilla/Bug.pm')
-rw-r--r-- | Bugzilla/Bug.pm | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm index 2f34d55e7..6fcf14c5a 100644 --- a/Bugzilla/Bug.pm +++ b/Bugzilla/Bug.pm @@ -1851,6 +1851,20 @@ sub _check_keywords { my $obj = Bugzilla::Keyword->check($keyword); $keywords{$obj->id} = $obj; } + + my %old_kw_id; + if (blessed $invocant) { + my @old_keywords = @{$invocant->keyword_objects}; + %old_kw_id = map { $_->id => 1 } @old_keywords; + } + + foreach my $keyword (values %keywords) { + next if $keyword->is_active || exists $old_kw_id{$keyword->id}; + + ThrowUserError('value_inactive', + { value => $keyword->name, class => ref $keyword }); + } + return [values %keywords]; } |