# because the bug may be moved into another product meanwhile.
# This check will be done later when creating new flags, see FormToNewFlags().
- # All new flags must belong to active flag types.
- if (scalar(@flagtype_ids)) {
- my $inactive_flagtypes =
- $dbh->selectrow_array('SELECT 1 FROM flagtypes
- WHERE id IN (' . join(',', @flagtype_ids) . ')
- AND is_active = 0 ' .
- $dbh->sql_limit(1));
-
- ThrowCodeError('flag_type_inactive') if $inactive_flagtypes;
- }
-
if (scalar(@flag_ids)) {
# No reference to existing flags should exist when creating a new
# attachment.
my $flag_type = new Bugzilla::FlagType($id);
$flag_type || ThrowCodeError('flag_type_nonexistent', { id => $id });
+ # Make sure the flag type is active.
+ unless ($flag_type->is_active) {
+ ThrowCodeError('flag_type_inactive', {'type' => $flag_type->name});
+ }
+
_validate(undef, $flag_type, $status, \@requestees, $private_attachment,
$bug_id, $attach_id);
}
is invalid.
[% ELSIF error == "flag_type_inactive" %]
- [% title = "Inactive Flag Types" %]
- Some flag types are inactive and cannot be used to create new flags.
+ [% title = "Inactive Flag Type" %]
+ The flag type [% type FILTER html %] is inactive and cannot be used
+ to create new flags.
[% ELSIF error == "flag_type_nonexistent" %]
There is no flag type with the ID <em>[% id FILTER html %]</em>.