From: lpsolit%gmail.com <> Date: Tue, 23 Aug 2005 03:48:44 +0000 (+0000) Subject: Bug 305451: GetGroupsByUserId() in buglist.cgi returns bad data (regression) - Patch... X-Git-Tag: bugzilla-2.21.1~92 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=38c2d4b6e1b3723833e5dca4001692531d1ffc3f;p=thirdparty%2Fbugzilla.git Bug 305451: GetGroupsByUserId() in buglist.cgi returns bad data (regression) - Patch by Joel Peshkin r=LpSolit a=justdave --- diff --git a/buglist.cgi b/buglist.cgi index 63ab55951f..70cc46bae4 100755 --- a/buglist.cgi +++ b/buglist.cgi @@ -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