]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 350181: Check whether the requestee is allowed to set a flag - Patch by Frédéric...
authorlpsolit%gmail.com <>
Sat, 26 Aug 2006 03:19:44 +0000 (03:19 +0000)
committerlpsolit%gmail.com <>
Sat, 26 Aug 2006 03:19:44 +0000 (03:19 +0000)
Bugzilla/Flag.pm
template/en/default/global/user-error.html.tmpl

index de90170a32252f1bac8849b15ac0e92866db2ae0..b82165e80924fc7a9baa2620621a19b96ea85221 100644 (file)
@@ -414,6 +414,15 @@ sub _validate {
                                  bug_id     => $bug_id,
                                  attach_id  => $attach_id });
             }
+
+            # Throw an error if the user won't be allowed to set the flag.
+            if ($flag_type->grant_group
+                && !$requestee->in_group_id($flag_type->grant_group->id))
+            {
+                ThrowUserError('flag_requestee_needs_privs',
+                               {'requestee' => $requestee,
+                                'flagtype'  => $flag_type});
+            }
         }
     }
 
index 4a5634d4ac490c69f4ff8527178e1d6f4d5e7456..76823cdbc719f8e948c786a6abde25ed3c84e639 100644 (file)
                     'flags.html' => 'Using Flags'} %]
     You can't ask more than one person at a time for
     <em>[% type.name FILTER html %]</em>.
-  
+
+  [% ELSIF error == "flag_requestee_needs_privs" %]
+    [% title = "Flag Requestee Needs Privileges" %]
+    [% requestee.identity FILTER html %] does not have permission to set the
+    <em>[% flagtype.name FILTER html %]</em> flag. Please select a user who is
+    a member of the <em>[% flagtype.grant_group.name FILTER html %]</em> group.
+
   [% ELSIF error == "flag_requestee_unauthorized" %]
     [% title = "Flag Requestee Not Authorized" %]
     [% admindocslinks = {'flags-overview.html#flags-admin'  => 'Administering Flags',