From 798044275be99053ebf51ca146ce6426b9f5cb80 Mon Sep 17 00:00:00 2001 From: "terry%netscape.com" <> Date: Wed, 30 Sep 1998 07:05:24 +0000 Subject: Added admin page for changing of default owners (code by Sam Ziegler ) --- doeditowners.cgi | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ editowners.cgi | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ query.cgi | 1 + 3 files changed, 145 insertions(+) create mode 100755 doeditowners.cgi create mode 100755 editowners.cgi diff --git a/doeditowners.cgi b/doeditowners.cgi new file mode 100755 index 000000000..b09d7298b --- /dev/null +++ b/doeditowners.cgi @@ -0,0 +1,72 @@ +#!/usr/bonsaitools/bin/perl -w +# -*- Mode: perl; indent-tabs-mode: nil -*- +# +# The contents of this file are subject to the Mozilla Public License +# Version 1.0 (the "License"); you may not use this file except in +# compliance with the License. You may obtain a copy of the License at +# http://www.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" +# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the +# License for the specific language governing rights and limitations +# under the License. +# +# The Original Code is the Bugzilla Bug Tracking System. +# +# The Initial Developer of the Original Code is Netscape Communications +# Corporation. Portions created by Netscape are Copyright (C) 1998 +# Netscape Communications Corporation. All Rights Reserved. +# +# Contributor(s): Sam Ziegler + +use diagnostics; +use strict; + +require "CGI.pl"; + +# Shut up misguided -w warnings about "used only once": +use vars %::COOKIE; + + +confirm_login(); + +print "Content-type: text/html\n\n"; + +if (Param("maintainer") ne $::COOKIE{'Bugzilla_login'}) { + print "

Sorry, you aren't the maintainer of this system.

\n"; + print "And so, you aren't allowed to edit the parameters of it.\n"; + exit; +} + + +PutHeader("Saving new owners"); + +SendSQL("select program, value, initialowner from components order by program, value"); + +my @line; + +foreach my $key (keys(%::FORM)) { + $::FORM{url_decode($key)} = $::FORM{$key}; +} + +my @updates; +my $curIndex = 0; + +while (@line = FetchSQLData()) { + my $curItem = "$line[0]_$line[1]"; + if (exists $::FORM{$curItem}) { + $::FORM{$curItem} =~ s/\r\n/\n/; + if ($::FORM{$curItem} ne $line[2]) { + print "$line[0] : $line[1] is now owned by $::FORM{$curItem}.
\n"; + $updates[$curIndex++] = "update components set initialowner = '$::FORM{$curItem}' where program = '$line[0]' and value = '$line[1]'"; + } + } +} + +foreach my $update (@updates) { + SendSQL($update); +} + +print "OK, done.

\n"; +print "Edit the owners some more.

\n"; +print "Go back to the query page.\n"; diff --git a/editowners.cgi b/editowners.cgi new file mode 100755 index 000000000..1bfb6ac13 --- /dev/null +++ b/editowners.cgi @@ -0,0 +1,72 @@ +#!/usr/bonsaitools/bin/perl -w +# -*- Mode: perl; indent-tabs-mode: nil -*- +# +# The contents of this file are subject to the Mozilla Public License +# Version 1.0 (the "License"); you may not use this file except in +# compliance with the License. You may obtain a copy of the License at +# http://www.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" +# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the +# License for the specific language governing rights and limitations +# under the License. +# +# The Original Code is the Bugzilla Bug Tracking System. +# +# The Initial Developer of the Original Code is Netscape Communications +# Corporation. Portions created by Netscape are Copyright (C) 1998 +# Netscape Communications Corporation. All Rights Reserved. +# +# Contributor(s): Sam Ziegler + +# Code derived from editparams.cgi + +use diagnostics; +use strict; + +require "CGI.pl"; + +# Shut up misguided -w warnings about "used only once": +use vars %::COOKIE; + +confirm_login(); + +print "Content-type: text/html\n\n"; + +if (Param("maintainer") ne $::COOKIE{Bugzilla_login}) { + print "

Sorry, you aren't the maintainer of this system.

\n"; + print "And so, you aren't allowed to edit the parameters of it.\n"; + exit; +} + + +PutHeader("Edit Component Owners"); + +print "This lets you edit the owners of the program components of bugzilla.\n"; + +print "
\n"; + +my $rowbreak = ""; + +SendSQL("select program, value, initialowner from components order by program, value"); + +my @line; +my $curProgram = ""; + +while (@line = FetchSQLData()) { + if ($line[0] ne $curProgram) { + print $rowbreak; + print "\n"; + $curProgram = $line[0]; + } + print "\n"; +} + +print "

$line[0]:
$line[1]
\n"; + +print "\n"; + +print "
\n"; + +print "

Skip all this, and go back to the query page\n"; diff --git a/query.cgi b/query.cgi index a8efd1fed..5afafeaf4 100755 --- a/query.cgi +++ b/query.cgi @@ -260,6 +260,7 @@ print " if (defined $::COOKIE{"Bugzilla_login"}) { if ($::COOKIE{"Bugzilla_login"} eq Param("maintainer")) { print "Edit Bugzilla operating parameters
\n"; + print "Edit Bugzilla component owners
\n"; } print "Log in as someone besides $::COOKIE{'Bugzilla_login'}
\n"; } -- cgit v1.2.3-24-g4f1b