Commit 28ace6f0 authored by terry%netscape.com's avatar terry%netscape.com

Added a page which describes all the components in a product.

parent 1f785439
...@@ -10,6 +10,13 @@ query the CVS tree. For example, ...@@ -10,6 +10,13 @@ query the CVS tree. For example,
will tell you what has been changed in the last week. will tell you what has been changed in the last week.
2/4/99 Added a new column "description" to the components table, and added
links to a new page which will use this to describe the components of a
given product. Feed this to MySQL:
alter table components add column description mediumtext not null;
2/3/99 Added a new column "initialqacontact" to the components table that gives 2/3/99 Added a new column "initialqacontact" to the components table that gives
an initial QA contact field. It may be empty if you wish the initial qa an initial QA contact field. It may be empty if you wish the initial qa
contact to be empty. If you're not using the QA contact field, you don't need contact to be empty. If you're not using the QA contact field, you don't need
......
...@@ -138,7 +138,8 @@ print " ...@@ -138,7 +138,8 @@ print "
<TD>$bug{'resolution'}</TD> <TD>$bug{'resolution'}</TD>
<TD ALIGN=RIGHT><B><A HREF=\"bug_status.html#severity\">Severity:</A></B></TD> <TD ALIGN=RIGHT><B><A HREF=\"bug_status.html#severity\">Severity:</A></B></TD>
<TD><SELECT NAME=bug_severity>$sev_popup</SELECT></TD> <TD><SELECT NAME=bug_severity>$sev_popup</SELECT></TD>
<TD ALIGN=RIGHT><B>Component:</B></TD> <TD ALIGN=RIGHT><B><A HREF=\"describecomponents.cgi?product=" .
url_quote($bug{'product'}) . "\">Component:</A></B></TD>
<TD><SELECT NAME=component>$component_popup</SELECT></TD> <TD><SELECT NAME=component>$component_popup</SELECT></TD>
</TR><TR> </TR><TR>
<TD ALIGN=RIGHT><B><A HREF=\"bug_status.html#assigned_to\">Assigned&nbsp;To: <TD ALIGN=RIGHT><B><A HREF=\"bug_status.html#assigned_to\">Assigned&nbsp;To:
......
#!/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): Terry Weissman <terry@mozilla.org>
use vars %::FORM;
use diagnostics;
use strict;
require "CGI.pl";
ConnectToDatabase();
GetVersionTable();
print "Content-type: text/html\n\n";
my $product = $::FORM{'product'};
if (!defined $product || lsearch(\@::legal_product, $product) < 0) {
PutHeader("Bugzilla component description");
print "
<FORM>
Please specify the product whose components you want described.
<P>
Product: <SELECT NAME=product>
";
print make_options(\@::legal_product);
print "
</SELECT>
<P>
<INPUT TYPE=\"submit\" VALUE=\"Submit\">
</FORM>
";
exit;
}
PutHeader("Bugzilla component description", "Bugzilla component description",
$product);
print "
<TABLE>
<tr>
<th align=left>Component</th>
<th align=left>Default owner</th>
";
my $useqacontact = Param("useqacontact");
my $cols = 2;
if ($useqacontact) {
print "<th align=left>Default qa contact</th>";
$cols++;
}
my $colbut1 = $cols - 1;
print "</tr>";
SendSQL("select value, initialowner, initialqacontact, description from components where program = " . SqlQuote($product));
while (MoreSQLData()) {
my @row = FetchSQLData();
my ($component, $initialowner, $initialqacontact, $description) = (@row);
print qq|
<tr><td colspan=$cols><hr></td></tr>
<tr><td rowspan=2>$component</td>
<td><a href="mailto:$initialowner">$initialowner</a></td>
|;
if ($useqacontact) {
print qq|
<td><a href="mailto:$initialqacontact">$initialqacontact</a></td>
|;
}
print "</tr><tr><td colspan=$colbut1>$description</td></tr>\n";
}
print "<tr><td colspan=$cols><hr></td></tr></table>\n";
...@@ -183,7 +183,8 @@ print " ...@@ -183,7 +183,8 @@ print "
<TR> <TR>
<td ALIGN=right valign=top><B>Version:</B></td> <td ALIGN=right valign=top><B>Version:</B></td>
<td>" . Version_element(pickversion(), $product) . "</td> <td>" . Version_element(pickversion(), $product) . "</td>
<td align=right valign=top><b>Component:</b></td> <td align=right valign=top><b><a href=\"describecomponents.cgi?product=" .
url_quote($product) . "\">Component:</b></td>
<td>$component_popup</td> <td>$component_popup</td>
</TR> </TR>
<tr><td>&nbsp<td> <td> <td> <td> <td> </tr> <tr><td>&nbsp<td> <td> <td> <td> <td> </tr>
......
...@@ -31,7 +31,8 @@ create table components ( ...@@ -31,7 +31,8 @@ create table components (
value tinytext, value tinytext,
program tinytext, program tinytext,
initialowner tinytext not null, # Should arguably be a mediumint! initialowner tinytext not null, # Should arguably be a mediumint!
initialqacontact tinytext not null # Should arguably be a mediumint! initialqacontact tinytext not null, # Should arguably be a mediumint!
description mediumtext not null
); );
...@@ -60,14 +61,14 @@ insert into components (value, program, initialowner, initialqacontact) values ( ...@@ -60,14 +61,14 @@ insert into components (value, program, initialowner, initialqacontact) values (
insert into components (value, program, initialowner, initialqacontact) values ("LDAP Tools", "Directory", "chuckb@netscape.com", ""); insert into components (value, program, initialowner, initialqacontact) values ("LDAP Tools", "Directory", "chuckb@netscape.com", "");
insert into components (value, program, initialowner, initialqacontact) values ("Networking", "MailNews", "mscott@netscape.com", "lchiang@netscape.com"); insert into components (value, program, initialowner, initialqacontact, description) values ("Networking", "MailNews", "mscott@netscape.com", "lchiang@netscape.com", "Integration with libnet, protocol support for POP3, IMAP4, SMTP, NNTP and LDAP");
insert into components (value, program, initialowner, initialqacontact) values ("Database", "MailNews", "davidmc@netscape.com", "lchiang@netscape.com"); insert into components (value, program, initialowner, initialqacontact, description) values ("Database", "MailNews", "davidmc@netscape.com", "lchiang@netscape.com", "Persistent storage of address books and mail/news summary files");
insert into components (value, program, initialowner, initialqacontact) values ("MIME", "MailNews", "rhp@netscape.com", "lchiang@netscape.com"); insert into components (value, program, initialowner, initialqacontact, description) values ("MIME", "MailNews", "rhp@netscape.com", "lchiang@netscape.com", "Parsing the MIME structure");
insert into components (value, program, initialowner, initialqacontact) values ("Security", "MailNews", "jefft@netscape.com", "lchiang@netscape.com"); insert into components (value, program, initialowner, initialqacontact, description) values ("Security", "MailNews", "jefft@netscape.com", "lchiang@netscape.com", "SSL, S/MIME for mail");
insert into components (value, program, initialowner, initialqacontact) values ("Composition", "MailNews", "ducarroz@netscape.com", "lchiang@netscape.com"); insert into components (value, program, initialowner, initialqacontact, description) values ("Composition", "MailNews", "ducarroz@netscape.com", "lchiang@netscape.com", "Front-end and back-end of message composition and sending");
insert into components (value, program, initialowner, initialqacontact) values ("Address Book", "MailNews", "putterman@netscape.com", "lchiang@netscape.com"); insert into components (value, program, initialowner, initialqacontact, description) values ("Address Book", "MailNews", "putterman@netscape.com", "lchiang@netscape.com", "Names, email addresses, phone numbers, etc.");
insert into components (value, program, initialowner, initialqacontact) values ("Front End", "MailNews", "phil@netscape.com", "lchiang@netscape.com"); insert into components (value, program, initialowner, initialqacontact, description) values ("Front End", "MailNews", "phil@netscape.com", "lchiang@netscape.com", "Three pane view, sidebar contents, toolbars, dialogs, etc.");
insert into components (value, program, initialowner, initialqacontact) values ("Back End", "MailNews", "phil@netscape.com", "lchiang@netscape.com"); insert into components (value, program, initialowner, initialqacontact, description) values ("Back End", "MailNews", "phil@netscape.com", "lchiang@netscape.com", "RDF data sources and application logic for local mail, news, IMAP and LDAP");
insert into components (value, program, initialowner, initialqacontact) values ("Internationalization", "MailNews", "nhotta@netscape.com", "momoi@netscape.com"); insert into components (value, program, initialowner, initialqacontact) values ("Internationalization", "MailNews", "nhotta@netscape.com", "momoi@netscape.com");
insert into components (value, program, initialowner, initialqacontact) values ("Localization", "MailNews", "rchen@netscape.com", "momoi@netscape.com"); insert into components (value, program, initialowner, initialqacontact) values ("Localization", "MailNews", "rchen@netscape.com", "momoi@netscape.com");
...@@ -156,12 +157,12 @@ insert into components (value, program, initialowner, initialqacontact) values ( ...@@ -156,12 +157,12 @@ insert into components (value, program, initialowner, initialqacontact) values (
insert into components (value, program, initialowner, initialqacontact) values ("Localization", "NGLayout", "rchen@netscape.com", "teruko@netscape.com"); insert into components (value, program, initialowner, initialqacontact) values ("Localization", "NGLayout", "rchen@netscape.com", "teruko@netscape.com");
insert into components (value, program, initialowner, initialqacontact) values ("Bonsai", "Webtools", "terry@mozilla.org", ""); insert into components (value, program, initialowner, initialqacontact, description) values ("Bonsai", "Webtools", "terry@mozilla.org", "", 'Web based <a href="http://www.mozilla.org/bonsai.html">Tree control system</a> for watching the up-to-the-minute goings-on in a CVS repository');
insert into components (value, program, initialowner, initialqacontact) values ("Bugzilla", "Webtools", "terry@mozilla.org", ""); insert into components (value, program, initialowner, initialqacontact, description) values ("Bugzilla", "Webtools", "terry@mozilla.org", "", "Use this component to report bugs in the bug system itself");
insert into components (value, program, initialowner, initialqacontact) values ("Despot", "Webtools", "terry@mozilla.org", ""); insert into components (value, program, initialowner, initialqacontact, description) values ("Despot", "Webtools", "terry@mozilla.org", "", "mozilla.org's <a href=http://cvs-mirror.mozilla.org/webtools/despot.cgi>account management</a> system");
insert into components (value, program, initialowner, initialqacontact) values ("LXR", "Webtools", "endico@mozilla.org", ""); insert into components (value, program, initialowner, initialqacontact, description) values ("LXR", "Webtools", "endico@mozilla.org", "", 'Source code <a href="http://cvs-mirror.mozilla.org/webtools/lxr/">cross reference</a> system');
insert into components (value, program, initialowner, initialqacontact) values ("Mozbot", "Webtools", "terry@netscape.com", ""); insert into components (value, program, initialowner, initialqacontact, description) values ("Mozbot", "Webtools", "terry@mozilla.org", "", 'IRC robot that watches tinderbox and other things');
insert into components (value, program, initialowner, initialqacontact) values ("Tinderbox", "Webtools", "terry@mozilla.org", ""); insert into components (value, program, initialowner, initialqacontact, description) values ("Tinderbox", "Webtools", "terry@mozilla.org", "", 'Tree-watching system to monitor <a href="http://www.mozilla.org/tinderbox.html">continuous builds</a> that we run on multiple platforms.');
select * from components; select * from components;
......
...@@ -259,7 +259,7 @@ $emailinput2<p> ...@@ -259,7 +259,7 @@ $emailinput2<p>
<tr> <tr>
<TH ALIGN=LEFT VALIGN=BOTTOM>Program:</th> <TH ALIGN=LEFT VALIGN=BOTTOM>Program:</th>
<TH ALIGN=LEFT VALIGN=BOTTOM>Version:</th> <TH ALIGN=LEFT VALIGN=BOTTOM>Version:</th>
<TH ALIGN=LEFT VALIGN=BOTTOM>Component:</th> <TH ALIGN=LEFT VALIGN=BOTTOM><A HREF=describecomponents.cgi>Component:<a></th>
"; ";
if (Param("usetargetmilestone")) { if (Param("usetargetmilestone")) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment