#!/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 # J. Paul Reed use strict; use lib "."; use Bugzilla::Constants; use Bugzilla::Config qw(:DEFAULT :admin); use Bugzilla::User; require "globals.pl"; Bugzilla->login(LOGIN_REQUIRED); my $template = Bugzilla->template; print Bugzilla->cgi->header(); UserInGroup("tweakparams") || ThrowUserError("auth_failure", {group => "tweakparams", action => "modify", object => "parameters"}); $template->put_header("Edit parameters"); print "This lets you edit the basic operating parameters of bugzilla.\n"; print "Be careful!\n"; print "

\n"; print "Any item you check Reset on will get reset to its default value.\n"; print "

\n"; my $rowbreak = ""; print $rowbreak; foreach my $i (GetParamList()) { my $name = $i->{'name'}; my $value = Param($name); print "\n"; print "\n"; print $rowbreak; } print ""; print "

$name:$i->{'desc'}
Reset\n"; SWITCH: for ($i->{'type'}) { /^t$/ && do { print "\n"; last SWITCH; }; /^l$/ && do { print "\n"; last SWITCH; }; /^b$/ && do { my $on; my $off; if ($value) { $on = "checked"; $off = ""; } else { $on = ""; $off = "checked"; } print "On\n"; print "Off\n"; last SWITCH; }; /^m$/ && do { my @choices = @{$i->{'choices'}}; ## showing 5 options seems like a nice round number; this should ## probably be configurable; if you care, file a bug ;-) my $boxSize = scalar(@choices) < 5 ? scalar(@choices) : 5; print "\n"; last SWITCH; }; /^s$/ && do { print "\n"; last SWITCH; }; # DEFAULT print "Unknown param type $i->{'type'}!!!\n"; } print "
version: What version of Bugzilla this is. This can't be modified.
" . $Bugzilla::Config::VERSION . "
\n"; print "
\n"; print "\n"; print "
\n"; print "

Skip all this, and go back to the query page\n"; $template->put_footer();