diff options
author | lpsolit%gmail.com <> | 2005-10-12 17:51:52 +0200 |
---|---|---|
committer | lpsolit%gmail.com <> | 2005-10-12 17:51:52 +0200 |
commit | b8f2c324a9a4133f264254d61993ff8c7e0233a2 (patch) | |
tree | 312fb1aba4325c769a93939937a5f79f01fb7e02 /doeditparams.cgi | |
parent | 5eee7ab7fb527d926bfdf5927268862048cd4479 (diff) | |
download | bugzilla-b8f2c324a9a4133f264254d61993ff8c7e0233a2.tar.gz bugzilla-b8f2c324a9a4133f264254d61993ff8c7e0233a2.tar.xz |
Bug 46296: Make editparams.cgi be multi-panel by category - Patch by Frédéric Buclin <LpSolit@gmail.com> r=joel a=justdave
Diffstat (limited to 'doeditparams.cgi')
-rwxr-xr-x | doeditparams.cgi | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/doeditparams.cgi b/doeditparams.cgi deleted file mode 100755 index 8d69f56bc..000000000 --- a/doeditparams.cgi +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/perl -wT -# -*- Mode: perl; indent-tabs-mode: nil -*- -# -# The contents of this file are subject to the Mozilla Public -# License Version 1.1 (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): Terry Weissman <terry@mozilla.org> -# J. Paul Reed <preed@sigkill.com> - -use strict; - -use lib qw(.); - -use Bugzilla; -use Bugzilla::Constants; -use Bugzilla::Config qw(:DEFAULT :admin $datadir); - -require "globals.pl"; - -my $user = Bugzilla->login(LOGIN_REQUIRED); - -my $cgi = Bugzilla->cgi; -my $template = Bugzilla->template; - -print $cgi->header(); - -$user->in_group('tweakparams') - || ThrowUserError("auth_failure", {group => "tweakparams", - action => "modify", - object => "parameters"}); - -$template->put_header("Saving new parameters"); - -my $howto = ""; - -foreach my $i (GetParamList()) { - my $name = $i->{'name'}; - my $value = $cgi->param($name); - if (defined $cgi->param("reset-$name")) { - $value = $i->{'default'}; - } else { - if ($i->{'type'} eq 'm') { - # This simplifies the code below - $value = [ $cgi->param($name) ]; - } else { - # Get rid of windows/mac-style line endings. - $value =~ s/\r\n?/\n/g; - - # assume single linefeed is an empty string - $value =~ s/^\n$//; - } - } - my $changed; - if ($i->{'type'} eq 'm') { - my @old = sort @{Param($name)}; - my @new = sort @$value; - if (scalar(@old) != scalar(@new)) { - $changed = 1; - } else { - $changed = 0; # Assume not changed... - for (my $cnt = 0; $cnt < scalar(@old); ++$cnt) { - if ($old[$cnt] ne $new[$cnt]) { - # entry is different, therefore changed - $changed = 1; - last; - } - } - } - } else { - $changed = ($value eq Param($name) ? 0 : 1); - } - if ($changed) { - if (exists $i->{'checker'}) { - my $ok = $i->{'checker'}->($value, $i); - if ($ok ne "") { - print "New value for " . html_quote($name) . - " is invalid: $ok<p>\n"; - print "Please hit <b>Back</b> and try again.\n"; - $template->put_footer(); - exit; - } - } - print "Changed " . html_quote($name) . ".<br>\n"; - SetParam($name, $value); - if (($name eq "shutdownhtml") && ($value ne "")) { - # The system is down, inform the user how to restore it - $howto = "<p>Bugzilla has now been shut down, to re-enable ". - "the system, please return to ". - "<a href=\"editparams.cgi\">editparams.cgi</a>.</p>"; - } - } -} - - -WriteParams(); - -unlink "$datadir/versioncache"; - -print "<p>OK, done.</p>\n"; -print $howto; -print "<a href=\"editparams.cgi\">Edit the params some more.</a><p>\n"; -print "<a href=\"query.cgi\">Go back to the query page.</a>\n"; - -$template->put_footer(); |