will tell you what has been changed in the last week.
+3/3/99 Added a "disallownew" field to the products table. If non-zero, then
+don't let people file new bugs against this product. (This is for when a
+product is retired, but you want to keep the bug reports around for posterity.)
+Feed this to MySQL:
+
+ alter table products add column disallownew tinyint not null;
+
+
2/8/99 Added FreeBSD to the list of OS's. Feed this to MySQL:
alter table bugs change column op_sys op_sys enum("All", "Windows 3.1", "Windows 95", "Windows 98", "Windows NT", "Mac System 7", "Mac System 7.5", "Mac System 7.6.1", "Mac System 8.0", "Mac System 8.5", "AIX", "BSDI", "HP-UX", "IRIX", "Linux", "FreeBSD", "OSF/1", "Solaris", "SunOS", "OS/2", "other") not null;
print "a bug.</H2>\n";
print "<table>";
foreach my $p (sort (@prodlist)) {
+ if (defined $::proddesc{$p} && $::proddesc{$p} eq '0') {
+ # Special hack. If we stuffed a "0" into proddesc, that means
+ # that disallownew was set for this bug, and so we don't want
+ # to allow people to specify that product here.
+ next;
+ }
print "<tr><th align=right valign=top><a href=\"enter_bug.cgi?product=" . url_quote($p) . "\"&$::buffer>$p</a>:</th>\n";
if (defined $::proddesc{$p}) {
print "<td valign=top>$::proddesc{$p}</td>\n";
my $dotargetmilestone = Param("usetargetmilestone");
my $mpart = $dotargetmilestone ? ", milestoneurl" : "";
- SendSQL("select product, description$mpart from products");
+ SendSQL("select product, description, disallownew$mpart from products");
while (@line = FetchSQLData()) {
- my ($p, $d, $u) = (@line);
+ my ($p, $d, $dis, $u) = (@line);
$::proddesc{$p} = $d;
+ if ($dis) {
+ # Special hack. Stomp on the description and make it "0" if we're
+ # not supposed to allow new bugs against this product. This is
+ # checked for in enter_bug.cgi.
+ $::proddesc{$p} = "0";
+ }
if ($dotargetmilestone) {
$::milestoneurl{$p} = $u;
}
create table products (
product tinytext,
description mediumtext,
-milestoneurl tinytext not null
+milestoneurl tinytext not null,
+disallownew tinyint not null
);