summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortravis%sedsystems.ca <>2005-03-16 07:10:13 +0100
committertravis%sedsystems.ca <>2005-03-16 07:10:13 +0100
commite490b45d57aee2aacd171a4a9b586111a8c88f53 (patch)
treeb54185c9f669cd2b309f727ecb21e178968866ff
parent235eaf8436a7cb2f693c3fb8bc5d042c652c1c5f (diff)
downloadbugzilla-e490b45d57aee2aacd171a4a9b586111a8c88f53.tar.gz
bugzilla-e490b45d57aee2aacd171a4a9b586111a8c88f53.tar.xz
Bug 283581 : Move UserInGroup out of globals.pl
Patch by Colin Ogilvie <colin.ogilvie@gmail.com> r=mkanat a=justdave
-rw-r--r--Bugzilla/Attachment.pm3
-rw-r--r--Bugzilla/DB.pm3
-rw-r--r--Bugzilla/Search.pm10
-rw-r--r--Bugzilla/Series.pm2
-rw-r--r--Bugzilla/Template.pm3
-rw-r--r--Bugzilla/User.pm13
-rw-r--r--CGI.pl1
-rwxr-xr-xbuglist.cgi1
-rwxr-xr-xchart.cgi1
-rwxr-xr-xcolchange.cgi1
-rwxr-xr-xdescribekeywords.cgi1
-rwxr-xr-xdoeditparams.cgi1
-rwxr-xr-xeditflagtypes.cgi1
-rwxr-xr-xeditgroups.cgi1
-rwxr-xr-xeditkeywords.cgi1
-rwxr-xr-xeditmilestones.cgi1
-rwxr-xr-xeditparams.cgi1
-rwxr-xr-xeditproducts.cgi2
-rwxr-xr-xeditsettings.cgi1
-rwxr-xr-xeditversions.cgi1
-rwxr-xr-xenter_bug.cgi1
-rw-r--r--globals.pl8
-rwxr-xr-xquery.cgi1
-rwxr-xr-xsanitycheck.cgi1
-rwxr-xr-xshow_bug.cgi1
-rwxr-xr-xshowdependencytree.cgi1
-rwxr-xr-xsummarize_time.cgi2
27 files changed, 43 insertions, 21 deletions
diff --git a/Bugzilla/Attachment.pm b/Bugzilla/Attachment.pm
index 8be92dcf2..1a1246d86 100644
--- a/Bugzilla/Attachment.pm
+++ b/Bugzilla/Attachment.pm
@@ -34,6 +34,7 @@ package Bugzilla::Attachment;
# Use the Flag module to handle flags.
use Bugzilla::Flag;
use Bugzilla::Config qw(:locations);
+use Bugzilla::User;
############################################################################
# Functions
@@ -69,7 +70,7 @@ sub query
my $dbh = Bugzilla->dbh;
- my $in_editbugs = &::UserInGroup("editbugs");
+ my $in_editbugs = UserInGroup("editbugs");
&::SendSQL("SELECT product_id
FROM bugs
WHERE bug_id = $bugid");
diff --git a/Bugzilla/DB.pm b/Bugzilla/DB.pm
index 6e0903a76..098d10ba1 100644
--- a/Bugzilla/DB.pm
+++ b/Bugzilla/DB.pm
@@ -49,6 +49,7 @@ use Bugzilla::Config qw(:DEFAULT :db);
use Bugzilla::Util;
use Bugzilla::Error;
use Bugzilla::DB::Schema;
+use Bugzilla::User;
# All this code is backwards compat fu. As such, its a bit ugly. Note the
# circular dependencies on Bugzilla.pm
@@ -261,7 +262,7 @@ sub bz_get_field_defs {
my ($self) = @_;
my $extra = "";
- if (!&::UserInGroup(Param('timetrackinggroup'))) {
+ if (!UserInGroup(Param('timetrackinggroup'))) {
$extra = "AND name NOT IN ('estimated_time', 'remaining_time', " .
"'work_time', 'percentage_complete', 'deadline')";
}
diff --git a/Bugzilla/Search.pm b/Bugzilla/Search.pm
index e38aed7bf..af8df0ab2 100644
--- a/Bugzilla/Search.pm
+++ b/Bugzilla/Search.pm
@@ -562,7 +562,7 @@ sub init {
my $table = "longdescs_$chartid";
my $extra = "";
if (Param("insidergroup")
- && !&::UserInGroup(Param("insidergroup")))
+ && !UserInGroup(Param("insidergroup")))
{
$extra = "AND $table.isprivate < 1";
}
@@ -625,7 +625,7 @@ sub init {
}
my $table = "longdescs_$chartseq";
my $extra = "";
- if (Param("insidergroup") && !&::UserInGroup(Param("insidergroup"))) {
+ if (Param("insidergroup") && !UserInGroup(Param("insidergroup"))) {
$extra = "AND $table.isprivate < 1";
}
push(@supptables, "LEFT JOIN longdescs AS $table " .
@@ -643,7 +643,7 @@ sub init {
}
my $table = "longdescs_$chartseq";
my $extra = "";
- if (Param("insidergroup") && !&::UserInGroup(Param("insidergroup"))) {
+ if (Param("insidergroup") && !UserInGroup(Param("insidergroup"))) {
$extra = "AND $table.isprivate < 1";
}
if ($list) {
@@ -664,7 +664,7 @@ sub init {
"^long_?desc," => sub {
my $table = "longdescs_$chartid";
my $extra = "";
- if (Param("insidergroup") && !&::UserInGroup(Param("insidergroup"))) {
+ if (Param("insidergroup") && !UserInGroup(Param("insidergroup"))) {
$extra = "AND $table.isprivate < 1";
}
push(@supptables, "INNER JOIN longdescs AS $table " .
@@ -740,7 +740,7 @@ sub init {
"^attachments\..*," => sub {
my $table = "attachments_$chartid";
my $extra = "";
- if (Param("insidergroup") && !&::UserInGroup(Param("insidergroup"))) {
+ if (Param("insidergroup") && !UserInGroup(Param("insidergroup"))) {
$extra = "AND $table.isprivate = 0";
}
push(@supptables, "INNER JOIN attachments AS $table " .
diff --git a/Bugzilla/Series.pm b/Bugzilla/Series.pm
index 53e6fbabf..3d4f301b9 100644
--- a/Bugzilla/Series.pm
+++ b/Bugzilla/Series.pm
@@ -163,7 +163,7 @@ sub initFromCGI {
# Change 'admin' here and in series.html.tmpl, or remove the check
# completely, if you want to change who can make series public.
- $self->{'public'} = 0 unless &::UserInGroup('admin');
+ $self->{'public'} = 0 unless UserInGroup('admin');
}
sub writeToDatabase {
diff --git a/Bugzilla/Template.pm b/Bugzilla/Template.pm
index aea32a2b3..3e37ed5e7 100644
--- a/Bugzilla/Template.pm
+++ b/Bugzilla/Template.pm
@@ -32,6 +32,7 @@ use strict;
use Bugzilla::Config qw(:DEFAULT $templatedir $datadir);
use Bugzilla::Util;
+use Bugzilla::User;
# for time2str - replace by TT Date plugin??
use Date::Format ();
@@ -406,7 +407,7 @@ sub create {
'user' => sub { return Bugzilla->user; },
# UserInGroup. Deprecated - use the user.* functions instead
- 'UserInGroup' => \&::UserInGroup,
+ 'UserInGroup' => \&Bugzilla::User::UserInGroup,
# SendBugMail - sends mail about a bug, using Bugzilla::BugMail.pm
'SendBugMail' => sub {
diff --git a/Bugzilla/User.pm b/Bugzilla/User.pm
index 63b2f6848..fabffa621 100644
--- a/Bugzilla/User.pm
+++ b/Bugzilla/User.pm
@@ -45,6 +45,7 @@ use Bugzilla::Auth;
use base qw(Exporter);
@Bugzilla::User::EXPORT = qw(insert_new_user is_available_username
login_to_id
+ UserInGroup
);
################################################################################
@@ -1058,6 +1059,10 @@ sub login_to_id ($) {
}
}
+sub UserInGroup ($) {
+ return defined Bugzilla->user->groups->{$_[0]} ? 1 : 0;
+}
+
1;
__END__
@@ -1335,8 +1340,6 @@ Params: $username (scalar, string) - The full login name of the username
can change his username to $username. (That is, this function
will return a boolean true value).
-=back
-
=item C<login_to_id($login)>
Takes a login name of a Bugzilla user and changes that into a numeric
@@ -1351,6 +1354,12 @@ of a user, but you don't want the full weight of Bugzilla::User.
However, consider using a Bugzilla::User object instead of this function
if you need more information about the user than just their ID.
+=item C<UserInGroup($groupname)>
+
+Takes a name of a group, and returns 1 if a user is in the group, 0 otherwise.
+
+=back
+
=head1 SEE ALSO
L<Bugzilla|Bugzilla>
diff --git a/CGI.pl b/CGI.pl
index 31ed48e3d..d1c738ff9 100644
--- a/CGI.pl
+++ b/CGI.pl
@@ -46,6 +46,7 @@ use Bugzilla::Constants;
use Bugzilla::Error;
use Bugzilla::BugMail;
use Bugzilla::Bug;
+use Bugzilla::User;
# Shut up misguided -w warnings about "used only once". For some reason,
# "use vars" chokes on me when I try it here.
diff --git a/buglist.cgi b/buglist.cgi
index 972717731..c401c43c2 100755
--- a/buglist.cgi
+++ b/buglist.cgi
@@ -39,6 +39,7 @@ use vars qw($template $vars);
use Bugzilla;
use Bugzilla::Search;
use Bugzilla::Constants;
+use Bugzilla::User;
# Include the Bugzilla CGI and general utility library.
require "CGI.pl";
diff --git a/chart.cgi b/chart.cgi
index 8b0d3971e..321c867fe 100755
--- a/chart.cgi
+++ b/chart.cgi
@@ -48,6 +48,7 @@ require "CGI.pl";
use Bugzilla::Constants;
use Bugzilla::Chart;
use Bugzilla::Series;
+use Bugzilla::User;
use vars qw($cgi $template $vars);
diff --git a/colchange.cgi b/colchange.cgi
index d84ee5404..11caca423 100755
--- a/colchange.cgi
+++ b/colchange.cgi
@@ -34,6 +34,7 @@ use vars qw(
use Bugzilla;
use Bugzilla::Constants;
+use Bugzilla::User;
require "CGI.pl";
Bugzilla->login();
diff --git a/describekeywords.cgi b/describekeywords.cgi
index 8597e6791..dd25c40d6 100755
--- a/describekeywords.cgi
+++ b/describekeywords.cgi
@@ -25,6 +25,7 @@ use strict;
use lib ".";
use Bugzilla;
+use Bugzilla::User;
require "CGI.pl";
diff --git a/doeditparams.cgi b/doeditparams.cgi
index 099b98404..028f28a60 100755
--- a/doeditparams.cgi
+++ b/doeditparams.cgi
@@ -28,6 +28,7 @@ use lib qw(.);
use Bugzilla;
use Bugzilla::Constants;
use Bugzilla::Config qw(:DEFAULT :admin $datadir);
+use Bugzilla::User;
require "CGI.pl";
diff --git a/editflagtypes.cgi b/editflagtypes.cgi
index 9c14219d2..7936823dc 100755
--- a/editflagtypes.cgi
+++ b/editflagtypes.cgi
@@ -36,6 +36,7 @@ use Bugzilla;
use Bugzilla::Constants;
use Bugzilla::Flag;
use Bugzilla::FlagType;
+use Bugzilla::User;
use vars qw( $template $vars );
diff --git a/editgroups.cgi b/editgroups.cgi
index abef251f4..c352908bb 100755
--- a/editgroups.cgi
+++ b/editgroups.cgi
@@ -31,6 +31,7 @@ use lib ".";
use Bugzilla;
use Bugzilla::Constants;
+use Bugzilla::User;
require "CGI.pl";
my $cgi = Bugzilla->cgi;
diff --git a/editkeywords.cgi b/editkeywords.cgi
index 4f4cf4bd5..f5fcf6a57 100755
--- a/editkeywords.cgi
+++ b/editkeywords.cgi
@@ -27,6 +27,7 @@ require "CGI.pl";
use Bugzilla::Constants;
use Bugzilla::Config qw(:DEFAULT $datadir);
+use Bugzilla::User;
my $cgi = Bugzilla->cgi;
diff --git a/editmilestones.cgi b/editmilestones.cgi
index 85bcae8d3..e62dcc4cb 100755
--- a/editmilestones.cgi
+++ b/editmilestones.cgi
@@ -23,6 +23,7 @@ require "globals.pl";
use Bugzilla::Constants;
use Bugzilla::Config qw(:DEFAULT $datadir);
+use Bugzilla::User;
use vars qw($template $vars);
diff --git a/editparams.cgi b/editparams.cgi
index 5d7ff9178..620ae6bae 100755
--- a/editparams.cgi
+++ b/editparams.cgi
@@ -27,6 +27,7 @@ use lib ".";
use Bugzilla::Constants;
use Bugzilla::Config qw(:DEFAULT :admin);
+use Bugzilla::User;
require "CGI.pl";
diff --git a/editproducts.cgi b/editproducts.cgi
index de0c874e2..aff79871c 100755
--- a/editproducts.cgi
+++ b/editproducts.cgi
@@ -35,7 +35,7 @@ use Bugzilla::Constants;
require "CGI.pl";
require "globals.pl";
use Bugzilla::Series;
-
+use Bugzilla::User;
use Bugzilla::Config qw(:DEFAULT $datadir);
# Shut up misguided -w warnings about "used only once". "use vars" just
diff --git a/editsettings.cgi b/editsettings.cgi
index 7ce05b2a2..b5e810ba9 100755
--- a/editsettings.cgi
+++ b/editsettings.cgi
@@ -21,6 +21,7 @@ use lib qw(.);
use Bugzilla;
use Bugzilla::Constants;
+use Bugzilla::User;
use Bugzilla::User::Setting;
require "CGI.pl";
diff --git a/editversions.cgi b/editversions.cgi
index 7faea7c8d..86c82beea 100755
--- a/editversions.cgi
+++ b/editversions.cgi
@@ -35,6 +35,7 @@ require "globals.pl";
use Bugzilla::Constants;
use Bugzilla::Config qw(:DEFAULT $datadir);
+use Bugzilla::User;
use vars qw($template $vars);
diff --git a/enter_bug.cgi b/enter_bug.cgi
index e2cd7f295..a242c1883 100755
--- a/enter_bug.cgi
+++ b/enter_bug.cgi
@@ -40,6 +40,7 @@ use lib qw(.);
use Bugzilla;
use Bugzilla::Constants;
use Bugzilla::Bug;
+use Bugzilla::User;
require "CGI.pl";
use vars qw(
diff --git a/globals.pl b/globals.pl
index ec7d39693..ec8c52d4d 100644
--- a/globals.pl
+++ b/globals.pl
@@ -966,14 +966,6 @@ sub get_legal_field_values {
return @$result_ref;
}
-sub UserInGroup {
- if ($_[1]) {
- die "UserInGroup no longer takes a second parameter.";
- }
-
- return defined Bugzilla->user->groups->{$_[0]};
-}
-
sub BugInGroupId {
my ($bugid, $groupid) = (@_);
PushGlobalSQLState();
diff --git a/query.cgi b/query.cgi
index ef02bbbca..625117139 100755
--- a/query.cgi
+++ b/query.cgi
@@ -32,6 +32,7 @@ require "CGI.pl";
use Bugzilla::Constants;
use Bugzilla::Search;
+use Bugzilla::User;
use vars qw(
@CheckOptionValues
diff --git a/sanitycheck.cgi b/sanitycheck.cgi
index c3c415312..6f85e6cfd 100755
--- a/sanitycheck.cgi
+++ b/sanitycheck.cgi
@@ -28,6 +28,7 @@ use lib qw(.);
require "CGI.pl";
use Bugzilla::Constants;
+use Bugzilla::User;
###########################################################################
# General subs
diff --git a/show_bug.cgi b/show_bug.cgi
index 03cf6f60d..e855b442f 100755
--- a/show_bug.cgi
+++ b/show_bug.cgi
@@ -26,6 +26,7 @@ use lib qw(.);
use Bugzilla;
use Bugzilla::Constants;
+use Bugzilla::User;
require "CGI.pl";
diff --git a/showdependencytree.cgi b/showdependencytree.cgi
index f1a495a6d..b373563c1 100755
--- a/showdependencytree.cgi
+++ b/showdependencytree.cgi
@@ -27,6 +27,7 @@ use strict;
use lib qw(.);
require "CGI.pl";
+use Bugzilla::User;
# Use global template variables.
use vars qw($template $vars);
diff --git a/summarize_time.cgi b/summarize_time.cgi
index 94b7e83f8..8992918cc 100755
--- a/summarize_time.cgi
+++ b/summarize_time.cgi
@@ -26,7 +26,7 @@ use Date::Format; # strftime
use Bugzilla::Bug; # EmitDependList
use Bugzilla::Util; # trim
use Bugzilla::Constants; # LOGIN_*
-
+use Bugzilla::User; # UserInGroup
require "CGI.pl";
GetVersionTable();