]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 345958: Do not throw an error if an inactive flag type is set to "X" while editin...
authorlpsolit%gmail.com <>
Fri, 25 Aug 2006 04:41:20 +0000 (04:41 +0000)
committerlpsolit%gmail.com <>
Fri, 25 Aug 2006 04:41:20 +0000 (04:41 +0000)
Bugzilla/Flag.pm
template/en/default/global/code-error.html.tmpl

index 7888640f96171e3fa4e07030cb72ca3768e57a49..de90170a32252f1bac8849b15ac0e92866db2ae0 100644 (file)
@@ -264,17 +264,6 @@ sub validate {
     # 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.
@@ -315,6 +304,11 @@ sub validate {
         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);
     }
index 0a9bcc867853354861bd0b44403382a84883d429..d5c5766b0974ae9597f8faa3bc6fa38cf05885d1 100644 (file)
     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>.