]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 305451: GetGroupsByUserId() in buglist.cgi returns bad data (regression) - Patch...
authorlpsolit%gmail.com <>
Tue, 23 Aug 2005 03:48:44 +0000 (03:48 +0000)
committerlpsolit%gmail.com <>
Tue, 23 Aug 2005 03:48:44 +0000 (03:48 +0000)
buglist.cgi

index 63ab55951fda37ce31535fb7722034a0e93d9051..70cc46bae4b72f6b1ddbbcadb93967f53da3afb3 100755 (executable)
@@ -309,25 +309,20 @@ sub GetQuip {
     return $quip;
 }
 
-sub GetGroupsByUserId {
-    my ($userid) = @_;
+sub GetGroups {
     my $dbh = Bugzilla->dbh;
 
-    return if !$userid;
-
     # Create an array where each item is a hash. The hash contains 
     # as keys the name of the columns, which point to the value of 
     # the columns for that row.
+    my $grouplist = Bugzilla->user->groups_as_string;
     my $groups = $dbh->selectall_arrayref(
-       "SELECT DISTINCT  groups.id, name, description, isactive
+                "SELECT  id, name, description, isactive
                    FROM  groups
-             INNER JOIN  user_group_map
-                     ON  user_group_map.group_id = groups.id
-                  WHERE  user_id = ?
-                    AND  isbless = 0
+                  WHERE  id IN ($grouplist)
                     AND  isbuggroup = 1
                ORDER BY  description "
-               , {Slice => {}}, ($userid));
+               , {Slice => {}});
 
     return $groups;
 }
@@ -994,7 +989,7 @@ if ($dotweak) {
     $vars->{'bugstatuses'} = [ keys %$bugstatuses ];
 
     # The groups to which the user belongs.
-    $vars->{'groups'} = GetGroupsByUserId($::userid);
+    $vars->{'groups'} = GetGroups();
 
     # If all bugs being changed are in the same product, the user can change
     # their version and component, so generate a list of products, a list of