Added oracle directory containing table creation scripts for Oracle
Added oracle/migrate_all. pl for migrating Mysql data to Oracle db Added oracle/longdescs_convert.pl for converting long_descs in Oracle db Added news.cgi for displaying current bugzilla news items Added editnews.cgi for administering news items (add/delete/modify) More to come. git-svn-id: svn://10.0.0.236/branches/RedHat_Features_20000324_branch@64321 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -767,7 +767,9 @@ $table{shadowlog} =
|
||||
|
||||
index(reflected)';
|
||||
|
||||
|
||||
$table{product_group} =
|
||||
'productid int not null,
|
||||
userid int not null
|
||||
|
||||
###########################################################################
|
||||
# Create tables
|
||||
|
||||
372
mozilla/webtools/bugzilla/editnews.cgi
Executable file
372
mozilla/webtools/bugzilla/editnews.cgi
Executable file
@@ -0,0 +1,372 @@
|
||||
#!/usr/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.
|
||||
#
|
||||
#
|
||||
# Direct any questions on this source code to
|
||||
#
|
||||
# Holger Schurig <holgerschurig@nikocity.de>
|
||||
# David Lawrence <dkl@redhat.com>
|
||||
|
||||
use diagnostics;
|
||||
use strict;
|
||||
|
||||
require "CGI.pl";
|
||||
require "globals.pl";
|
||||
|
||||
#
|
||||
# Displays the form to edit news articles
|
||||
#
|
||||
sub EmitFormElements {
|
||||
my ($id, $add_date, $headline, $story) = (@_);
|
||||
|
||||
print qq{
|
||||
<TH ALIGN="right">Headline</TH>
|
||||
<TD><INPUT SIZE=64 MAXLENGTH=64 NAME=headline VALUE="$headline"></TD>
|
||||
</TR><TR>
|
||||
<TH ALIGN="right">Story</TH>
|
||||
<TD><TEXTAREA ROWS=4 COLS=64 WRAP=VIRTUAL NAME=story>$$story</TEXTAREA></TD>
|
||||
</TR>
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Displays a text like "a.", "a or b.", "a, b or c.", "a, b, c or d."
|
||||
#
|
||||
sub PutTrailer {
|
||||
my (@links) = ("Back to the <A HREF=\"query.cgi\">query page</A>", @_);
|
||||
|
||||
my $count = $#links;
|
||||
my $num = 0;
|
||||
print "<P>\n";
|
||||
print "<CENTER>";
|
||||
foreach (@links) {
|
||||
print $_;
|
||||
if ($num == $count) {
|
||||
print ".\n";
|
||||
}
|
||||
elsif ($num == $count-1) {
|
||||
print " or ";
|
||||
}
|
||||
else {
|
||||
print ", ";
|
||||
}
|
||||
$num++;
|
||||
}
|
||||
print "</CENTER>\n";
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Preliminary checks:
|
||||
#
|
||||
confirm_login();
|
||||
|
||||
print "Content-type: text/html\n\n";
|
||||
|
||||
unless (UserInGroup("addnews")) {
|
||||
PutHeader("Not allowed");
|
||||
print "Sorry, you aren't a member of the 'addnews' group.\n";
|
||||
print "And so, you aren't allowed to add, modify or delete news items.\n";
|
||||
PutTrailer();
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# often used variables
|
||||
#
|
||||
my $id = trim($::FORM{'id'} || '');
|
||||
my $action = trim($::FORM{'action'} || '');
|
||||
my $localtrailer = "<A HREF=\"editnews.cgi\">edit</A> more news items";
|
||||
|
||||
|
||||
#
|
||||
# action='' -> Show nice list of groups
|
||||
#
|
||||
unless ($action) {
|
||||
PutHeader("Select News Item");
|
||||
|
||||
if ($::driver eq 'mysql') {
|
||||
SendSQL("SELECT id, DATE_FORMAT(add_date, '\%b \%d, \%Y \%l:\%i'), headline " .
|
||||
"FROM news " .
|
||||
"ORDER BY id");
|
||||
} else {
|
||||
SendSQL("SELECT id, TO_CHAR(add_date, 'MON DD, YYYY HH:MI'), headline, story " .
|
||||
"FROM news " .
|
||||
"ORDER BY id");
|
||||
}
|
||||
|
||||
print "<P>\n<TABLE BORDER=1 CELLPADDING=4 CELLSPACING=0 ALIGN=center><TR BGCOLOR=\"#BFBFBF\">\n";
|
||||
print " <TH ALIGN=left>ID</TH>\n";
|
||||
print " <TH ALIGN=left>Date</TH>\n";
|
||||
print " <TH ALIGN=left>Headline</TH>\n";
|
||||
print " <TH ALIGN=left>Action</TH>\n";
|
||||
print "</TR>";
|
||||
while ( MoreSQLData() ) {
|
||||
my ($id, $add_date, $headline) = FetchSQLData();
|
||||
print "<TR BGCOLOR=\"#ECECEC\">\n";
|
||||
print " <TD ALIGN=left><A HREF=\"editnews.cgi?id=$id&action=edit\">$id</A></TD>\n";
|
||||
print " <TD ALIGN=left>$add_date</TD>\n";
|
||||
print " <TD ALIGN=left>$headline</TD>\n";
|
||||
print " <TD ALIGN=left><A HREF=\"editnews.cgi?id=$id&action=del\">Delete</A></TD>\n";
|
||||
print "</TR>";
|
||||
}
|
||||
print "<TR BGCOLOR=\"#ECECEC\">\n";
|
||||
print " <TH ALIGN=left COLSPAN=3>Add a new item</TH>\n";
|
||||
print " <TD ALIGN=left><A HREF=\"editnews.cgi?action=add\">Add</A></TD>\n";
|
||||
print "</TR></TABLE>\n";
|
||||
|
||||
PutTrailer();
|
||||
PutFooter();
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# action='add' -> present form for parameters for new item
|
||||
#
|
||||
# (next action will be 'new')
|
||||
#
|
||||
if ($action eq 'add') {
|
||||
PutHeader("Add News Item");
|
||||
|
||||
#print "This page lets you add a news item to bugzilla.\n";
|
||||
print "<FORM METHOD=POST ACTION=editnews.cgi>\n";
|
||||
print "<TABLE BORDER=0 CELLPADDING=4 CELLSPACING=0 ALIGN=center><TR>\n";
|
||||
|
||||
EmitFormElements('', '', '<Place headline here>', \'<Place story here>');
|
||||
|
||||
print "</TR>\n</TABLE>\n";
|
||||
print "<CENTER><INPUT TYPE=SUBMIT VALUE=\"Add\"></CENTER>\n";
|
||||
print "<INPUT TYPE=HIDDEN NAME=\"action\" VALUE=\"new\">\n";
|
||||
print "</FORM>";
|
||||
|
||||
my $other = $localtrailer;
|
||||
$other =~ s/more/other/;
|
||||
PutTrailer($other);
|
||||
PutFooter();
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# action='new' -> add news item entered in the 'action=add' screen
|
||||
#
|
||||
if ($action eq 'new') {
|
||||
PutHeader("Adding News Item");
|
||||
my $headline = trim($::FORM{'headline'} || '');
|
||||
my $story = trim($::FORM{'story'} || '');
|
||||
|
||||
# Cleanups and valididy checks
|
||||
|
||||
unless ($headline) {
|
||||
print "You must enter a headline for the news item. Please press\n";
|
||||
print "<b>Back</b> and try again.\n";
|
||||
PutTrailer($localtrailer);
|
||||
exit;
|
||||
}
|
||||
|
||||
SendSQL("select id from news where headline = " . SqlQuote($headline));
|
||||
my $result = FetchOneColumn();
|
||||
if ($result) {
|
||||
print "The news item '$headline' already exists. Please press\n";
|
||||
print "<b>Back</b> and try again.\n";
|
||||
PutTrailer($localtrailer);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
# Add the new group.
|
||||
if ($::driver eq 'mysql') {
|
||||
SendSQL("INSERT INTO news ( " .
|
||||
"add_date, headline, story" .
|
||||
") VALUES ( " .
|
||||
"now(), " .
|
||||
SqlQuote($headline) . "," .
|
||||
SqlQuote($story) . ")");
|
||||
} else {
|
||||
SendSQL("INSERT INTO news ( " .
|
||||
"id, add_date, headline, story" .
|
||||
") VALUES ( " .
|
||||
"news_seq.nextval, sysdate, " .
|
||||
SqlQuote($headline) . "," .
|
||||
SqlQuote($story) . ")");
|
||||
}
|
||||
|
||||
print "<CENTER>OK, done.</CENTER><P>\n";
|
||||
PutTrailer($localtrailer);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# action='del' -> ask if user really wants to delete
|
||||
#
|
||||
# (next action would be 'delete')
|
||||
#
|
||||
if ($action eq 'del') {
|
||||
PutHeader("Delete News Item");
|
||||
|
||||
# display some data about the news item
|
||||
if ($::driver eq 'mysql') {
|
||||
SendSQL("SELECT id, DATE_FORMAT(add_date, '\%b \%d, \%Y \%l:\%i'), headline, story " .
|
||||
"FROM news " .
|
||||
"WHERE id = " . $::FORM{'id'});
|
||||
} else {
|
||||
SendSQL("SELECT id, TO_CHAR(add_date, 'MON DD, YYYY HH:MI'), headline, story " .
|
||||
"FROM news " .
|
||||
"WHERE id = " . $::FORM{'id'});
|
||||
}
|
||||
|
||||
my ($id, $add_date, $headline, $story) = FetchSQLData();
|
||||
|
||||
print qq{
|
||||
<P>
|
||||
<TABLE ALIGN=center WIDTH=700 BORDER=1 CELLSPACING=0 CELLPADDING=3>
|
||||
<TR BGCOLOR="#BFBFBF">
|
||||
<TD ALIGN=left>
|
||||
<FONT SIZE=+2><B>$headline</B></FONT><BR>
|
||||
<FONT SIZE=-1>Added on</FONT> <I>$add_date</I>
|
||||
</TD>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
$story
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<P>
|
||||
};
|
||||
|
||||
print "<CENTER><H2>Confirmation</H2>\n";
|
||||
print "</TD>\n</TR></TABLE>";
|
||||
print "<P>Do you really want to delete this news item?<P>\n";
|
||||
print "<FORM METHOD=POST ACTION=editnews.cgi>\n";
|
||||
print "<INPUT TYPE=SUBMIT VALUE=\"Yes, delete\">\n";
|
||||
print "<INPUT TYPE=HIDDEN NAME=action VALUE=delete>\n";
|
||||
print "<INPUT TYPE=HIDDEN NAME=id VALUE=$id>\n";
|
||||
print "</FORM></CENTER>";
|
||||
|
||||
PutTrailer($localtrailer);
|
||||
PutFooter();
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# action='delete' -> really delete the news item
|
||||
#
|
||||
if ($action eq 'delete') {
|
||||
PutHeader("Deleting News Item");
|
||||
|
||||
SendSQL("DELETE FROM news " .
|
||||
"WHERE id = " . $::FORM{'id'});
|
||||
print "<CENTER>Item deleted.<BR></CENTER>\n";
|
||||
|
||||
PutTrailer($localtrailer);
|
||||
PutFooter();
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#
|
||||
# action='edit' -> present the edit news item
|
||||
#
|
||||
# (next action would be 'update')
|
||||
#
|
||||
if ($action eq 'edit') {
|
||||
PutHeader("Edit News Item");
|
||||
|
||||
# get data of group
|
||||
SendSQL("SELECT id, add_date, headline, story " .
|
||||
"FROM news " .
|
||||
"WHERE id = " . $::FORM{'id'});
|
||||
my ($id, $add_date, $headline, $story) = FetchSQLData();
|
||||
|
||||
print "<FORM METHOD=POST ACTION=editnews.cgi>\n";
|
||||
print "<TABLE BORDER=0 CELLPADDING=4 CELLSPACING=0 ALIGN=center><TR>\n";
|
||||
|
||||
EmitFormElements($id, $add_date, $headline, \$story);
|
||||
|
||||
print "</TR>\n";
|
||||
print "</TABLE>\n";
|
||||
|
||||
print "<INPUT TYPE=hidden NAME=id VALUE=$id>\n";
|
||||
print "<INPUT TYPE=hidden NAME=headlineold VALUE=\"$headline\">\n";
|
||||
print "<INPUT TYPE=hidden NAME=storyold VALUE=\"$story\">\n";
|
||||
print "<INPUT TYPE=hidden NAME=action VALUE=update>\n";
|
||||
print "<CENTER><INPUT TYPE=submit VALUE=\"Update\"></CENTER>\n";
|
||||
print "</FORM>";
|
||||
|
||||
my $x = $localtrailer;
|
||||
$x =~ s/more/other/;
|
||||
PutTrailer($x);
|
||||
PutFooter();
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# action='update' -> update the news item
|
||||
#
|
||||
if ($action eq 'update') {
|
||||
PutHeader("Update News Item");
|
||||
|
||||
my $id = trim($::FORM{'id'});
|
||||
my $headlineold = trim($::FORM{'headlineold'} || '');
|
||||
my $storyold = trim($::FORM{'storyold'} || '');
|
||||
my $headline = trim($::FORM{'headline'} || '');
|
||||
my $story = trim($::FORM{'story'} || '');
|
||||
|
||||
if ($headline ne $headlineold) {
|
||||
unless ($headline ne "") {
|
||||
print "Sorry, I can't delete the headline.";
|
||||
PutTrailer($localtrailer);
|
||||
exit;
|
||||
}
|
||||
SendSQL("UPDATE news " .
|
||||
"SET headline = " . SqlQuote($headline) .
|
||||
" WHERE id = $id");
|
||||
print "Updated headline.<BR>\n";
|
||||
}
|
||||
|
||||
if ($story ne $storyold) {
|
||||
unless ($story ne "") {
|
||||
print "Sorry, I can't delete the story.";
|
||||
PutTrailer($localtrailer);
|
||||
exit;
|
||||
}
|
||||
|
||||
SendSQL("UPDATE news " .
|
||||
"SET story = " . SqlQuote($story) .
|
||||
" WHERE id = $id");
|
||||
print "Updated story.<BR>\n";
|
||||
}
|
||||
|
||||
PutTrailer($localtrailer);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#
|
||||
# No valid action found
|
||||
#
|
||||
PutHeader("Error");
|
||||
print "I don't have a clue what you want.<BR>\n";
|
||||
|
||||
foreach ( sort keys %::FORM) {
|
||||
print "$_: $::FORM{$_}<BR>\n";
|
||||
}
|
||||
@@ -755,6 +755,7 @@ sub GetLongDescriptionAsHTML {
|
||||
return $result;
|
||||
}
|
||||
|
||||
|
||||
sub ShowCcList {
|
||||
my ($num) = (@_);
|
||||
my @ccids;
|
||||
|
||||
77
mozilla/webtools/bugzilla/news.cgi
Executable file
77
mozilla/webtools/bugzilla/news.cgi
Executable file
@@ -0,0 +1,77 @@
|
||||
#!/usr/bin/perl -w
|
||||
#
|
||||
# news.cgi
|
||||
#
|
||||
# Contributor(s) David Lawrence <dkl@redhat.com>
|
||||
|
||||
require 'CGI.pl';
|
||||
require 'globals.pl';
|
||||
|
||||
print "Content-type: text/html\n\n";
|
||||
PutHeader("Bugzilla News");
|
||||
|
||||
|
||||
# subroutine: PutStory
|
||||
# description: outputs story in table html format
|
||||
# params: $headline = headline of news article (scalar)
|
||||
# $date = date news article was created (scalar)
|
||||
# $story = actual large text of the story (scalar)
|
||||
# returns: none
|
||||
|
||||
sub PutStory {
|
||||
my ($add_date, $headline, $story) = (@_);
|
||||
print qq{
|
||||
<P>
|
||||
<TABLE ALIGN=center WIDTH=700 BORDER=1 CELLSPACING=0 CELLPADDING=3>
|
||||
<TR BGCOLOR="#BFBFBF">
|
||||
<TD ALIGN=left>
|
||||
<FONT SIZE=+2><B>$headline</B></FONT><BR>
|
||||
<FONT SIZE=-1>Added on</FONT> <I>$add_date</I>
|
||||
</TD>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
$$story
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<P>
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
if (defined ($::FORM{'id'}) && $::FORM{'id'} ne '') {
|
||||
# Show an individual news article
|
||||
my $query = "";
|
||||
if ($::driver eq 'mysql') {
|
||||
$query = "select add_date, headline, story from news where id = " . $::FORM{'id'};
|
||||
} else {
|
||||
$query = "select TO_CHAR(add_date, 'YYYY-MM-DD HH:MI:SS'), " .
|
||||
"headline, story from news " .
|
||||
"where id = " . $::FORM{'id'};
|
||||
}
|
||||
SendSQL($query);
|
||||
my ($add_date, $headline, $story) = FetchSQLData();
|
||||
PutStory($add_date, $headline, \$story);
|
||||
|
||||
} else {
|
||||
# Show all the news
|
||||
print "<CENTER><H2>All the News...</H2></CENTER>\n";
|
||||
my $query = "";
|
||||
if ($::driver eq 'mysql') {
|
||||
$query = "select id, add_date, headline, story from news order by id";
|
||||
} else {
|
||||
$query = "select id, TO_CHAR(add_date, 'YYYY-MM-DD HH:MI:SS'), " .
|
||||
"headline, story from news order by id";
|
||||
}
|
||||
SendSQL($query);
|
||||
while (my @row = FetchSQLData()) {
|
||||
my ($id, $add_date, $headline, $story) = (@row);
|
||||
PutStory($add_date, $headline, \$story);
|
||||
}
|
||||
}
|
||||
|
||||
PutFooter();
|
||||
|
||||
exit;
|
||||
|
||||
167
mozilla/webtools/bugzilla/oracle/longdescs_convert.pl
Executable file
167
mozilla/webtools/bugzilla/oracle/longdescs_convert.pl
Executable file
@@ -0,0 +1,167 @@
|
||||
#!/usr/bin/perl -w
|
||||
#
|
||||
# filename: longdescs_convert.pl
|
||||
# description: 2000-01-20 Added a new "longdescs" table, which is supposed to have all the
|
||||
# long descriptions in it, replacing the old long_desc field in the bugs
|
||||
# table. The below hideous code populates this new table with things from
|
||||
# the old field, with ugly parsing and heuristics.
|
||||
# exceptions: Oracle Only!
|
||||
# contributors: Holger Schurig <holgerschurig@nikocity.de>
|
||||
# David Lawrence <dkl@redhat.com>
|
||||
#
|
||||
|
||||
use DBI;
|
||||
use Date::Parse;
|
||||
use Date::Format;
|
||||
|
||||
# database setup
|
||||
# Connect to Oracle Database
|
||||
$ENV{'ORACLE_HOME'} = "/opt/oracle/product/805/";
|
||||
$ENV{'ORACLE_SID'} = "bugzilla";
|
||||
$ENV{'TWO_TASK'} = "bugzilla";
|
||||
$ENV{'ORACLE_USERID'} = "bugzilla/bugzilla";
|
||||
my $oracle_name = "bugzilla";
|
||||
my $oracle_user = "bugzilla/bugzilla";
|
||||
my $oracle_date = "SYSDATE";
|
||||
my $oracle_dsn = "DBI:Oracle:$oracle_name";
|
||||
my $dbh = DBI->connect($oracle_dsn, $oracle_user, '', { RaiseError => 1 })
|
||||
|| die "Can't connect to database server: " . $DBI::errstr .
|
||||
" for $oracle_dsn, $oracle_user";
|
||||
print "\n\nConnected to Oracle database.\n";
|
||||
|
||||
$dbh->{LongReadLen} = 1000 * 1024; # large object to read in
|
||||
$dbh->{LongTruncOk} = 0; # do not truncate
|
||||
|
||||
|
||||
# subroutine: WriteOneDesc
|
||||
# description: Inserts a comment into the new longdescs comments table
|
||||
# params: $id = current bug number (scalar)
|
||||
# $who = userid of who created the comment (scalar)
|
||||
# $when = date when the comment was created (scalar)
|
||||
# $buffer = the actual text of the comment (scalar)
|
||||
# returns: none
|
||||
|
||||
sub WriteOneDesc {
|
||||
my ($id, $who, $when, $buffer) = (@_);
|
||||
$buffer = trim($buffer);
|
||||
if ($buffer eq '') {
|
||||
return;
|
||||
}
|
||||
my $query = "INSERT INTO longdescs (bug_id, who, bug_when, thetext) VALUES " .
|
||||
"($id, $who, TO_DATE(" .
|
||||
$dbh->quote( time2str('%Y/%m/%d %H:%M:%S', $when) ) . ", 'YYYY-MM-DD HH24:MI:SS'), :1)";
|
||||
my $sth = $dbh->prepare($query);
|
||||
$sth->bind_param(1, $buffer, { SQL_LONGVARCHAR => 1 });
|
||||
$sth->execute();
|
||||
}
|
||||
|
||||
|
||||
# subroutine: trim
|
||||
# description: Trim whitespace from front and back.
|
||||
# params: $_ = string to trim whitespace (scalar)
|
||||
# returns: $_ = string with whitespace removed (scalar)
|
||||
|
||||
sub trim {
|
||||
($_) = (@_);
|
||||
s/^\s+//g;
|
||||
s/\s+$//g;
|
||||
return $_;
|
||||
}
|
||||
|
||||
|
||||
my $sth = $dbh->prepare("SELECT count(bug_id) FROM bugs");
|
||||
$sth->execute();
|
||||
my ($total) = ($sth->fetchrow_array);
|
||||
|
||||
print "Populating new long_desc table. This is slow. There are $total\n";
|
||||
print "bugs to process; a line of dots will be printed for each 50.\n\n";
|
||||
$| = 1;
|
||||
|
||||
$dbh->do('DELETE FROM longdescs');
|
||||
|
||||
$sth = $dbh->prepare("SELECT bug_id, TO_CHAR(creation_ts, 'YYYY-MM-DD HH24:MI:SS'), reporter, long_desc " .
|
||||
"FROM bugs ORDER BY bug_id");
|
||||
$sth->execute();
|
||||
|
||||
my $count = 0;
|
||||
|
||||
while (1) {
|
||||
my ($id, $createtime, $reporterid, $desc) = ($sth->fetchrow_array());
|
||||
if (!$id) {
|
||||
last;
|
||||
}
|
||||
print ".";
|
||||
$count++;
|
||||
if ($count % 10 == 0) {
|
||||
print " ";
|
||||
if ($count % 50 == 0) {
|
||||
print "$count/$total (" . int($count * 100 / $total) . "%)\n";
|
||||
}
|
||||
}
|
||||
$desc =~ s/\r//g;
|
||||
my $who = $reporterid;
|
||||
my $when = str2time($createtime);
|
||||
my $buffer = "";
|
||||
foreach my $line (split(/\n/, $desc)) {
|
||||
$line =~ s/\s+$//g; # Trim trailing whitespace.
|
||||
if ($line =~ /^------- Additional Comments From ([^\s]+)\s+(\d.+\d)\s+-------$/) {
|
||||
my $name = $1;
|
||||
my $date = str2time($2);
|
||||
$date += 59; # Oy, what a hack. The creation time is
|
||||
# accurate to the second. But we the long
|
||||
# text only contains things accurate to the
|
||||
# minute. And so, if someone makes a comment
|
||||
# within a minute of the original bug creation,
|
||||
# then the comment can come *before* the
|
||||
# bug creation. So, we add 59 seconds to
|
||||
# the time of all comments, so that they
|
||||
# are always considered to have happened at
|
||||
# the *end* of the given minute, not the
|
||||
# beginning.
|
||||
if ($date >= $when) {
|
||||
WriteOneDesc($id, $who, $when, $buffer);
|
||||
$buffer = "";
|
||||
$when = $date;
|
||||
my $s2 = $dbh->prepare("SELECT userid FROM profiles " .
|
||||
"WHERE login_name = " .
|
||||
$dbh->quote($name));
|
||||
$s2->execute();
|
||||
($who) = ($s2->fetchrow_array());
|
||||
if (!$who) {
|
||||
# This username doesn't exist. Try a special
|
||||
# netscape-only hack (sorry about that, but I don't
|
||||
# think it will hurt any other installations). We
|
||||
# have many entries in the bugsystem from an ancient
|
||||
# world where the "@netscape.com" part of the loginname
|
||||
# was omitted. So, look up the user again with that
|
||||
# appended, and use it if it's there.
|
||||
if ($name !~ /\@/) {
|
||||
my $nsname = $name . "\@netscape.com";
|
||||
$s2 =
|
||||
$dbh->prepare("SELECT userid FROM profiles " .
|
||||
"WHERE login_name = " .
|
||||
$dbh->quote($nsname));
|
||||
$s2->execute();
|
||||
($who) = ($s2->fetchrow_array());
|
||||
}
|
||||
}
|
||||
|
||||
if (!$who) {
|
||||
# This username doesn't exist. Maybe someone renamed
|
||||
# him or something. Use a summy profile (Anonymous)
|
||||
# since we used to allow anonymous comments.
|
||||
($who) = '4424'; # userid of user 'Anonymous'
|
||||
}
|
||||
next;
|
||||
} else {
|
||||
# print "\nDecided this line of bug $id has a date of " .
|
||||
# time2str("'%Y/%m/%d %H:%M:%S'", $date) .
|
||||
# "\nwhich is less than previous line:\n$line\n\n";
|
||||
}
|
||||
|
||||
}
|
||||
$buffer .= $line . "\n";
|
||||
}
|
||||
WriteOneDesc($id, $who, $when, $buffer);
|
||||
}
|
||||
|
||||
18
mozilla/webtools/bugzilla/oracle/makeactivitytable.sql
Executable file
18
mozilla/webtools/bugzilla/oracle/makeactivitytable.sql
Executable file
@@ -0,0 +1,18 @@
|
||||
rem Creates the bug activity table
|
||||
rem Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table bugs_activity;
|
||||
drop index bugact_index;
|
||||
|
||||
create table bugs_activity (
|
||||
bug_id INTEGER CONSTRAINT ACT_NN_BUGID NOT NULL,
|
||||
who INTEGER CONSTRAINT ACT_NN_WHO NOT NULL,
|
||||
bug_when DATE CONSTRAINT ACT_NN_WHEN NOT NULL,
|
||||
field VARCHAR2(64) CONSTRAINT ACT_NN_FIELD NOT NULL,
|
||||
oldvalue VARCHAR2(400) ,
|
||||
newvalue VARCHAR2(400)
|
||||
);
|
||||
|
||||
create index bugact_index on bugs_activity (bug_id, bug_when);
|
||||
|
||||
exit;
|
||||
23
mozilla/webtools/bugzilla/oracle/makeattachmenttable.sql
Executable file
23
mozilla/webtools/bugzilla/oracle/makeattachmenttable.sql
Executable file
@@ -0,0 +1,23 @@
|
||||
rem Table to hold attachements to bugs
|
||||
rem Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table attachments;
|
||||
drop sequence attachid_seq;
|
||||
drop index attach_index;
|
||||
|
||||
create table attachments (
|
||||
attach_id INTEGER CONSTRAINT ATTACH_PK_ATTACHID PRIMARY KEY NOT NULL,
|
||||
bug_id INTEGER CONSTRAINT ATTACH_NN_BUGID NOT NULL,
|
||||
creation_ts DATE CONSTRAINT ATTACH_NN_CREATION NOT NULL,
|
||||
description VARCHAR2(2000) CONSTRAINT ATTACH_NN_DESC NOT NULL,
|
||||
mimetype VARCHAR2(255) CONSTRAINT ATTACH_NN_MIME NOT NULL,
|
||||
ispatch INTEGER ,
|
||||
filename VARCHAR2(255) CONSTRAINT ATTACH_NN_FILE NOT NULL,
|
||||
thedata BLOB CONSTRAINT ATTACH_NN_DATA NOT NULL,
|
||||
submitter_id INTEGER CONSTRAINT ATTACH_NN_SUBMIT NOT NULL
|
||||
);
|
||||
|
||||
create sequence attachid_seq NOCACHE START WITH 1 INCREMENT BY 1;
|
||||
create index attach_index on attachments (bug_id, creation_ts);
|
||||
|
||||
exit;
|
||||
14
mozilla/webtools/bugzilla/oracle/makebuggrouptable.sql
Executable file
14
mozilla/webtools/bugzilla/oracle/makebuggrouptable.sql
Executable file
@@ -0,0 +1,14 @@
|
||||
rem * Table to hold valid bug class values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table bug_group;
|
||||
drop index buggroup_index;
|
||||
|
||||
create table bug_group (
|
||||
bugid INTEGER CONSTRAINT BUGGROUP_NN_BUGID NOT NULL,
|
||||
groupid INTEGER CONSTRAINT BUGGROUP_NN_GROUPID NOT NULL
|
||||
);
|
||||
|
||||
create index buggroup_index on bug_group (bugid, groupid);
|
||||
|
||||
exit;
|
||||
18
mozilla/webtools/bugzilla/oracle/makebugstatustable.sql
Executable file
18
mozilla/webtools/bugzilla/oracle/makebugstatustable.sql
Executable file
@@ -0,0 +1,18 @@
|
||||
rem * Table to hold valid bug status values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table bug_status;
|
||||
|
||||
create table bug_status (
|
||||
id INTEGER CONSTRAINT STATUS_PK_ID PRIMARY KEY NOT NULL,
|
||||
value VARCHAR(255) CONSTRAINT STATUS_NN_VALUE NOT NULL
|
||||
);
|
||||
|
||||
rem insert into bug_status (id, value) values ('1', 'NEW');
|
||||
rem insert into bug_status (id, value) values ('2', 'VERIFIED');
|
||||
rem insert into bug_status (id, value) values ('3', 'ASSIGNED');
|
||||
rem insert into bug_status (id, value) values ('4', 'REOPENED');
|
||||
rem insert into bug_status (id, value) values ('5', 'RESOLVED');
|
||||
rem insert into bug_status (id, value) values ('6', 'CLOSED');
|
||||
|
||||
exit;
|
||||
56
mozilla/webtools/bugzilla/oracle/makebugtable.sql
Executable file
56
mozilla/webtools/bugzilla/oracle/makebugtable.sql
Executable file
@@ -0,0 +1,56 @@
|
||||
rem The big bugs table
|
||||
rem Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table bugs;
|
||||
drop index bugs_index;
|
||||
drop sequence bugs_seq;
|
||||
|
||||
create table bugs (
|
||||
bug_id INTEGER CONSTRAINT BUGS_PK_BUGID PRIMARY KEY NOT NULL,
|
||||
groupset INTEGER DEFAULT('0'),
|
||||
group_id INTEGER DEFAULT('0'),
|
||||
assigned_to INTEGER CONSTRAINT BUGS_NN_ASSITO NOT NULL,
|
||||
bug_file_loc VARCHAR2(255) DEFAULT(''),
|
||||
patch_file_loc VARCHAR2(255) DEFAULT(''),
|
||||
bug_severity VARCHAR2(64) CONSTRAINT BUGS_NN_SEVRTY NOT NULL,
|
||||
bug_status VARCHAR2(64) CONSTRAINT BUGS_NN_STATUS NOT NULL,
|
||||
bug_view INTEGER DEFAULT('0'),
|
||||
creation_ts DATE CONSTRAINT BUGS_NN_CRTETS NOT NULL,
|
||||
delta_ts DATE,
|
||||
short_desc VARCHAR2(4000) CONSTRAINT BUGS_NN_SHORT NOT NULL,
|
||||
long_desc LONG DEFAULT(''),
|
||||
op_sys VARCHAR2(64) DEFAULT('Linux'),
|
||||
priority VARCHAR2(64) CONSTRAINT BUGS_NN_PRIRTY NOT NULL,
|
||||
product VARCHAR2(256) CONSTRAINT BUGS_NN_PRODCT NOT NULL,
|
||||
rep_platform VARCHAR2(64) CONSTRAINT BUGS_NN_PLATFM NOT NULL,
|
||||
reporter INTEGER CONSTRAINT BUGS_NN_REPRTR NOT NULL,
|
||||
version VARCHAR2(64) CONSTRAINT BUGS_NN_VERSN NOT NULL,
|
||||
release VARCHAR2(64) DEFAULT(''),
|
||||
component VARCHAR2(64) CONSTRAINT BUGS_NN_COMPNT NOT NULL,
|
||||
resolution VARCHAR2(64) DEFAULT(''),
|
||||
class VARCHAR2(255) DEFAULT(''),
|
||||
target_milestone VARCHAR2(64) DEFAULT(''),
|
||||
qa_contact VARCHAR2(255) DEFAULT(''),
|
||||
status_whiteboard VARCHAR2(4000) DEFAULT(''),
|
||||
votes INTEGER DEFAULT('0'),
|
||||
keywords VARCHAR(255) DEFAULT(''),
|
||||
lastdiffed DATE
|
||||
);
|
||||
|
||||
create sequence bugs_seq NOCACHE START WITH 1 INCREMENT BY 1;
|
||||
create index bugs_index on bugs (assigned_to,
|
||||
creation_ts,
|
||||
delta_ts,
|
||||
bug_severity,
|
||||
bug_status,
|
||||
op_sys,
|
||||
priority,
|
||||
product,
|
||||
reporter,
|
||||
version,
|
||||
component,
|
||||
resolution,
|
||||
target_milestone,
|
||||
qa_contact);
|
||||
|
||||
exit;
|
||||
15
mozilla/webtools/bugzilla/oracle/makecctable.sql
Executable file
15
mozilla/webtools/bugzilla/oracle/makecctable.sql
Executable file
@@ -0,0 +1,15 @@
|
||||
rem Table to hold list of cc persons for particular bug
|
||||
rem Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table cc;
|
||||
drop index cc_index;
|
||||
|
||||
create table cc (
|
||||
bug_id INTEGER CONSTRAINT CC_NN_BUGID NOT NULL,
|
||||
who INTEGER CONSTRAINT CC_NN_WHO NOT NULL
|
||||
);
|
||||
|
||||
create index cc_index on cc (bug_id, who);
|
||||
|
||||
exit;
|
||||
|
||||
17
mozilla/webtools/bugzilla/oracle/makeclasstable.sql
Executable file
17
mozilla/webtools/bugzilla/oracle/makeclasstable.sql
Executable file
@@ -0,0 +1,17 @@
|
||||
rem * Table to hold valid bug class values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table class;
|
||||
|
||||
create table class (
|
||||
id INTEGER CONSTRAINT CLASS_PK_ID PRIMARY KEY,
|
||||
value VARCHAR(255) CONSTRAINT CLASS_NN_VALUE NOT NULL
|
||||
);
|
||||
|
||||
rem insert into class (id, value) values ('1', 'install/upgrade');
|
||||
rem insert into class (id, value) values ('2', 'packaging');
|
||||
rem insert into class (id, value) values ('3', 'functionality');
|
||||
rem insert into class (id, value) values ('4', 'security');
|
||||
rem insert into class (id, value) values ('5', 'documentation');
|
||||
|
||||
exit;
|
||||
19
mozilla/webtools/bugzilla/oracle/makecomponenttable.sql
Executable file
19
mozilla/webtools/bugzilla/oracle/makecomponenttable.sql
Executable file
@@ -0,0 +1,19 @@
|
||||
rem Table to hold component information divided by product
|
||||
rem Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table components;
|
||||
|
||||
create table components (
|
||||
value VARCHAR2(255) CONSTRAINT COMP_NN_VALUE NOT NULL,
|
||||
program VARCHAR2(255) CONSTRAINT COMP_NN_PROGRM NOT NULL,
|
||||
initialowner VARCHAR2(64) CONSTRAINT COMP_NN_INTOWN NOT NULL,
|
||||
devowner VARCHAR2(64),
|
||||
initialqacontact VARCHAR2(64),
|
||||
description VARCHAR2(2000)
|
||||
);
|
||||
|
||||
rem insert into components (value, program, initialowner, description)
|
||||
rem values ('TestComponent', 'TestProduct', 'dkl@redhat.com',
|
||||
rem 'This is a test component in the test product database. This ought to be blown away and replaced with real stuffrem in a finished installation of bugzilla.');
|
||||
|
||||
exit;
|
||||
14
mozilla/webtools/bugzilla/oracle/makedependenciestable.sql
Executable file
14
mozilla/webtools/bugzilla/oracle/makedependenciestable.sql
Executable file
@@ -0,0 +1,14 @@
|
||||
rem Table to hold bug report dependency information
|
||||
rem Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table dependencies;
|
||||
drop index depend_index;
|
||||
|
||||
create table dependencies (
|
||||
blocked INTEGER CONSTRAINT DEPEND_NN_BLOCKED NOT NULL,
|
||||
dependson INTEGER CONSTRAINT DEPEND_NN_DPNDSON NOT NULL
|
||||
);
|
||||
|
||||
create index depend_index on dependencies (blocked, dependson);
|
||||
|
||||
exit;
|
||||
15
mozilla/webtools/bugzilla/oracle/makeemailtable.sql
Executable file
15
mozilla/webtools/bugzilla/oracle/makeemailtable.sql
Executable file
@@ -0,0 +1,15 @@
|
||||
rem * Table to hold valid email choices values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table emailnotification;
|
||||
|
||||
create table emailnotification (
|
||||
id INTEGER CONSTRAINT EMAIL_PK_ID PRIMARY KEY NOT NULL,
|
||||
value VARCHAR(255) CONSTRAINT EMAIL_NN_VALUE NOT NULL
|
||||
);
|
||||
|
||||
rem insert into emailnotification (id, value) values ('1', 'ExcludeSelfChanges');
|
||||
rem insert into emailnotification (id, value) values ('2', 'CConly');
|
||||
rem insert into emailnotification (id, value) values ('3', 'All');
|
||||
|
||||
exit;
|
||||
21
mozilla/webtools/bugzilla/oracle/makefielddefs.sql
Executable file
21
mozilla/webtools/bugzilla/oracle/makefielddefs.sql
Executable file
@@ -0,0 +1,21 @@
|
||||
rem create script for fielddefs table
|
||||
rem Cotributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table fielddefs;
|
||||
|
||||
create table fielddefs (
|
||||
fieldid INTEGER CONSTRAINT FIELDDEF_PK_ID PRIMARY KEY NOT NULL,
|
||||
name VARCHAR2(64) CONSTRAINT FIELDDEF_NN_NAME NOT NULL,
|
||||
description VARCHAR2(255) CONSTRAINT FIELDDEF_NN_DESC NOT NULL,
|
||||
mailhead INTEGER DEFAULT ('0'),
|
||||
sortkey INTEGER CONSTRAINT FIELDDEF_NN_SORT NOT NULL
|
||||
);
|
||||
|
||||
create index fielddefs_index on fielddefs (sortkey);
|
||||
|
||||
drop sequence fielddefs.seq;
|
||||
|
||||
create sequence fielddefs_seq START WITH 1 INCREMENT BY 1;
|
||||
|
||||
exit;
|
||||
|
||||
30
mozilla/webtools/bugzilla/oracle/makegroupstable.sql
Executable file
30
mozilla/webtools/bugzilla/oracle/makegroupstable.sql
Executable file
@@ -0,0 +1,30 @@
|
||||
rem Table to hold bugzilla group information
|
||||
rem Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table groups;
|
||||
|
||||
create table groups (
|
||||
bit INTEGER DEFAULT('0'),
|
||||
groupid INTEGER CONSTRAINT GROUPS_PK_GROUPID PRIMARY KEY NOT NULL,
|
||||
name VARCHAR2(255) CONSTRAINT GROUPS_NN_NAME NOT NULL,
|
||||
description VARCHAR2(2000) CONSTRAINT GROUPS_NN_DESC NOT NULL,
|
||||
isbuggroup INTEGER CONSTRAINT GROUPS_NN_BUGGRP NOT NULL,
|
||||
userregexp VARCHAR2(255),
|
||||
contract INTEGER CONSTRAINT GROUPS_NN_CONTACT NOT NULL
|
||||
);
|
||||
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (1, 1, 'tweakparams', 'Can tweak operating parameters', 0, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (2, 2, 'editgroupmembers', 'Can put people in and out of groups that they are members of.', 0, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (4, 3, 'creategroups', 'Can create and destroy groups.', 0, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (8, 4, 'editcomponents', 'Can create, destroy, and edit components.', 0, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (16, 5, 'support', 'Red Hat Technical Supprt', 1, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (32, 6, 'qa', 'Red Hat Quality Assurance', 1, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (64, 7, 'devel', 'Red Hat Development', 1, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (128, 8, 'marketing', 'Red Hat Marketing', 1, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (256, 9, 'web', 'Red Hat Web Group', 1, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (512, 10, 'beta', 'Red Hat Beta Program', 1, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (1024, 11, 'intel', 'Intel Confidential Group', 1, '', 1);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (2048, 12, 'errata', 'Red Hat Errata Group', 1, '', 0);
|
||||
rem insert into groups (bit, groupid, name, description, isbuggroup, userregexp, contract) values (4096, 13, 'setcontract', 'Can set a bug report to contract priority', 1, '', 0);
|
||||
|
||||
exit;
|
||||
12
mozilla/webtools/bugzilla/oracle/makekeyworddef.sql
Executable file
12
mozilla/webtools/bugzilla/oracle/makekeyworddef.sql
Executable file
@@ -0,0 +1,12 @@
|
||||
rem table to hold keyword definitions
|
||||
rem Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table keyworddefs;
|
||||
|
||||
create table keyworddefs (
|
||||
id INTEGER CONSTRAINT KEYDEF_PK_ID PRIMARY KEY NOT NULL,
|
||||
name VARCHAR2(64) CONSTRAINT KEYDEF_NN_NAME NOT NULL,
|
||||
description VARCHAR2(2000)
|
||||
);
|
||||
|
||||
exit;
|
||||
14
mozilla/webtools/bugzilla/oracle/makekeywords.sql
Executable file
14
mozilla/webtools/bugzilla/oracle/makekeywords.sql
Executable file
@@ -0,0 +1,14 @@
|
||||
rem table to hold keywords
|
||||
rem Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table keywords;
|
||||
drop index keywords_index;
|
||||
|
||||
create table keywords (
|
||||
bug_id INTEGER CONSTRAINT KEYWORDS_NN_BUGID NOT NULL,
|
||||
keywordid INTEGER CONSTRAINT KEYWORDS_NN_KEYID NOT NULL
|
||||
);
|
||||
|
||||
create index keywords_index on keywords (bug_id, keywordid);
|
||||
|
||||
exit;
|
||||
20
mozilla/webtools/bugzilla/oracle/makelogincookiestable.sql
Executable file
20
mozilla/webtools/bugzilla/oracle/makelogincookiestable.sql
Executable file
@@ -0,0 +1,20 @@
|
||||
rem * Table to hold login cookie information for user authentification
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table logincookies;
|
||||
drop index login_index;
|
||||
drop sequence login_seq;
|
||||
|
||||
create table logincookies (
|
||||
cookie INTEGER CONSTRAINT LOGIN_PK_COOKIE PRIMARY KEY,
|
||||
userid INTEGER CONSTRAINT LOGIN_NN_USERID NOT NULL,
|
||||
cryptpassword VARCHAR2(64),
|
||||
hostname VARCHAR2(128),
|
||||
lastused DATE
|
||||
);
|
||||
|
||||
create index login_index on logincookies (lastused);
|
||||
|
||||
create sequence login_seq NOCACHE START WITH 1 INCREMENT BY 1;
|
||||
|
||||
exit;
|
||||
16
mozilla/webtools/bugzilla/oracle/makelongdesctable.sql
Executable file
16
mozilla/webtools/bugzilla/oracle/makelongdesctable.sql
Executable file
@@ -0,0 +1,16 @@
|
||||
rem * Table to hold valid bug class values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table longdescs;
|
||||
drop index longdescs_index;
|
||||
|
||||
create table longdescs (
|
||||
bug_id INTEGER CONSTRAINT LONG_NN_BUGID NOT NULL,
|
||||
who INTEGER CONSTRAINT LONG_NN_WHO NOT NULL,
|
||||
bug_when DATE CONSTRAINT LONG_NN_WHEN NOT NULL,
|
||||
thetext LONG
|
||||
);
|
||||
|
||||
create index longdescs_index on longdescs (bug_id, bug_when);
|
||||
|
||||
exit;
|
||||
13
mozilla/webtools/bugzilla/oracle/makeopsystable.sql
Executable file
13
mozilla/webtools/bugzilla/oracle/makeopsystable.sql
Executable file
@@ -0,0 +1,13 @@
|
||||
rem * Table to hold valid op sys values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table op_sys;
|
||||
|
||||
create table op_sys (
|
||||
id INTEGER CONSTRAINT OPSYS_PK_ID PRIMARY KEY,
|
||||
value VARCHAR2(255) CONSTRAINT OPSYS_NN_VALUE NOT NULL
|
||||
);
|
||||
|
||||
rem insert into op_sys (id, value) values ('1', 'Linux');
|
||||
|
||||
exit;
|
||||
16
mozilla/webtools/bugzilla/oracle/makeprioritytable.sql
Executable file
16
mozilla/webtools/bugzilla/oracle/makeprioritytable.sql
Executable file
@@ -0,0 +1,16 @@
|
||||
rem * Table to hold valid priority values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table priority;
|
||||
|
||||
create table priority (
|
||||
id INTEGER CONSTRAINT PRIORITY_PK_ID PRIMARY KEY NOT NULL,
|
||||
value VARCHAR(255) CONSTRAINT PRIORITY_NN_VALUE NOT NULL
|
||||
);
|
||||
|
||||
rem insert into priority (id, value) values ('1', 'high');
|
||||
rem insert into priority (id, value) values ('2', 'normal');
|
||||
rem insert into priority (id, value) values ('3', 'low');
|
||||
rem insert into priority (id, value) values ('4', 'contract');
|
||||
|
||||
exit;
|
||||
15
mozilla/webtools/bugzilla/oracle/makeproductgroup.sql
Executable file
15
mozilla/webtools/bugzilla/oracle/makeproductgroup.sql
Executable file
@@ -0,0 +1,15 @@
|
||||
rem * Table to hold valid bug class values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table product_group;
|
||||
drop index product_index;
|
||||
|
||||
create table product_group (
|
||||
productid INTEGER CONSTRAINT PRODGROUP_NN_PRODID NOT NULL,
|
||||
groupid INTEGER CONSTRAINT PRODGROUP_NN_GROUPID NOT NULL
|
||||
);
|
||||
|
||||
create index prodgroup_index on product_group (productid, groupid);
|
||||
|
||||
exit;
|
||||
|
||||
20
mozilla/webtools/bugzilla/oracle/makeproducttable.sql
Executable file
20
mozilla/webtools/bugzilla/oracle/makeproducttable.sql
Executable file
@@ -0,0 +1,20 @@
|
||||
rem * Table to hold the current list of products in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table products;
|
||||
drop sequence product_seq;
|
||||
|
||||
create table products (
|
||||
product VARCHAR2(255) CONSTRAINT PRODUCT_NN_PRODUCT NOT NULL,
|
||||
description VARCHAR2(2000) CONSTRAINT PRODUCT_NN_DESC NOT NULL,
|
||||
milestoneurl VARCHAR2(255),
|
||||
disallownew VARCHAR2(255),
|
||||
votesperuser INTEGER,
|
||||
id INTEGER CONSTRAINT PRODUCT_PK_ID PRIMARY KEY NOT NULL
|
||||
);
|
||||
|
||||
create sequence product_seq NOCACHE START WITH 1 INCREMENT BY 1;
|
||||
|
||||
rem insert into products(product, description, id) values ('TestProduct', 'This is a test product. This ought to be blown away and replaced with real stuff in a finished installation of bugzilla.', product_seq.nextval);
|
||||
|
||||
exit;
|
||||
26
mozilla/webtools/bugzilla/oracle/makeprofilestable.sql
Executable file
26
mozilla/webtools/bugzilla/oracle/makeprofilestable.sql
Executable file
@@ -0,0 +1,26 @@
|
||||
rem * Table to hold all the valid members of bugzilla and their information
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table profiles;
|
||||
drop index profiles_index;
|
||||
drop sequence profiles_seq;
|
||||
|
||||
create table profiles (
|
||||
userid INTEGER CONSTRAINT PROFILE_PK_USRID PRIMARY KEY,
|
||||
login_name VARCHAR2(255) CONSTRAINT PROFILE_NN_LOGIN NOT NULL,
|
||||
password VARCHAR2(16) CONSTRAINT PROFILE_NN_PASSWD NOT NULL,
|
||||
cryptpassword VARCHAR2(64) CONSTRAINT PROFILE_NN_CRYPT NOT NULL,
|
||||
realname VARCHAR2(255),
|
||||
groupid INTEGER DEFAULT(0),
|
||||
groupset INTEGER DEFAULT(0),
|
||||
emailnotification VARCHAR2(30) DEFAULT('ExcludeSelfChanges'),
|
||||
disabledtext VARCHAR2(255),
|
||||
newemailtech INTEGER,
|
||||
mybugslink INTEGER DEFAULT('1')
|
||||
);
|
||||
|
||||
create sequence profiles_seq NOCACHE START WITH 1 INCREMENT BY 1;
|
||||
|
||||
create index profiles_index on profiles (login_name);
|
||||
|
||||
exit;
|
||||
15
mozilla/webtools/bugzilla/oracle/makequerytable.sql
Executable file
15
mozilla/webtools/bugzilla/oracle/makequerytable.sql
Executable file
@@ -0,0 +1,15 @@
|
||||
rem * Table to hold valid member queries in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table queries ;
|
||||
drop index queries_index;
|
||||
|
||||
create table queries (
|
||||
userid INTEGER CONSTRAINT QUERY_NN_USRID NOT NULL,
|
||||
query_name VARCHAR2(255) CONSTRAINT QUERY_NN_NAME NOT NULL,
|
||||
query LONG CONSTRAINT QUERY_NN_QUERY NOT NULL
|
||||
);
|
||||
|
||||
create index queries_index on queries (query_name);
|
||||
|
||||
exit;
|
||||
17
mozilla/webtools/bugzilla/oracle/makerepplatformtable.sql
Executable file
17
mozilla/webtools/bugzilla/oracle/makerepplatformtable.sql
Executable file
@@ -0,0 +1,17 @@
|
||||
rem * Table to hold valid rep platform values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table rep_platform;
|
||||
|
||||
create table rep_platform (
|
||||
id INTEGER CONSTRAINT PLATFM_PK_ID PRIMARY KEY,
|
||||
value VARCHAR(255) CONSTRAINT PLATFM_NN_VALUE NOT NULL
|
||||
);
|
||||
|
||||
rem insert into rep_platform (id, value) values ('1', 'All');
|
||||
rem insert into rep_platform (id, value) values ('2', 'i386');
|
||||
rem insert into rep_platform (id, value) values ('3', 'alpha');
|
||||
rem insert into rep_platform (id, value) values ('4', 'sparc');
|
||||
rem insert into rep_platform (id, value) values ('5', 'noarch');
|
||||
|
||||
exit;
|
||||
21
mozilla/webtools/bugzilla/oracle/makeresolutiontable.sql
Executable file
21
mozilla/webtools/bugzilla/oracle/makeresolutiontable.sql
Executable file
@@ -0,0 +1,21 @@
|
||||
rem * Table to hold valid bug resolution values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table resolution;
|
||||
|
||||
create table resolution (
|
||||
id INTEGER CONSTRAINT RESO_PK_ID PRIMARY KEY,
|
||||
value VARCHAR2(255)
|
||||
);
|
||||
|
||||
rem insert into resolution (id, value) values ('1', 'NOTABUG');
|
||||
rem insert into resolution (id, value) values ('2', 'WONTFIX');
|
||||
rem insert into resolution (id, value) values ('3', 'DEFERRED');
|
||||
rem insert into resolution (id, value) values ('4', 'WORKSFORME');
|
||||
rem insert into resolution (id, value) values ('5', 'CURRENTRELEASE');
|
||||
rem insert into resolution (id, value) values ('6', 'RAWHIDE');
|
||||
rem insert into resolution (id, value) values ('7', 'ERRATA');
|
||||
rem insert into resolution (id, value) values ('8', 'DUPLICATE');
|
||||
rem insert into resolution (id, value) values ('9', '');
|
||||
|
||||
exit;
|
||||
17
mozilla/webtools/bugzilla/oracle/makeseveritytable.sql
Executable file
17
mozilla/webtools/bugzilla/oracle/makeseveritytable.sql
Executable file
@@ -0,0 +1,17 @@
|
||||
rem * Table to hold valid bug severity values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table bug_severity;
|
||||
|
||||
create table bug_severity (
|
||||
id INTEGER CONSTRAINT SEVERE_PK_ID PRIMARY KEY,
|
||||
value VARCHAR(255) CONSTRAINT SEVERE_NN_VALUE NOT NULL
|
||||
);
|
||||
|
||||
rem insert into bug_severity (id, value) values ('1', 'security');
|
||||
rem insert into bug_severity (id, value) values ('2', 'high');
|
||||
rem insert into bug_severity (id, value) values ('3', 'normal');
|
||||
rem insert into bug_severity (id, value) values ('4', 'low');
|
||||
rem insert into bug_severity (id, value) values ('5', 'enhancement');
|
||||
|
||||
exit;
|
||||
28
mozilla/webtools/bugzilla/oracle/makeusergroup.sql
Executable file
28
mozilla/webtools/bugzilla/oracle/makeusergroup.sql
Executable file
@@ -0,0 +1,28 @@
|
||||
rem * Table to hold valid user group values in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table user_group;
|
||||
drop index usergroup_index;
|
||||
|
||||
create table user_group (
|
||||
userid INTEGER CONSTRAINT USERGROUP_NN_BUGID NOT NULL,
|
||||
groupid INTEGER CONSTRAINT USERGROUP_NN_GROUPID NOT NULL
|
||||
);
|
||||
|
||||
create index usergroup_index on user_group (userid, groupid);
|
||||
|
||||
rem insert into user_group values (1, 1);
|
||||
rem insert into user_group values (1, 2);
|
||||
rem insert into user_group values (1, 3);
|
||||
rem insert into user_group values (1, 4);
|
||||
rem insert into user_group values (1, 5);
|
||||
rem insert into user_group values (1, 6);
|
||||
rem insert into user_group values (1, 7);
|
||||
rem insert into user_group values (1, 8);
|
||||
rem insert into user_group values (1, 9);
|
||||
rem insert into user_group values (1, 10);
|
||||
rem insert into user_group values (1, 11);
|
||||
rem insert into user_group values (1, 12);
|
||||
rem insert into user_group values (1, 13);
|
||||
|
||||
exit;
|
||||
13
mozilla/webtools/bugzilla/oracle/makeversiontable.sql
Executable file
13
mozilla/webtools/bugzilla/oracle/makeversiontable.sql
Executable file
@@ -0,0 +1,13 @@
|
||||
rem * Table to hold valid product versions in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table versions;
|
||||
|
||||
create table versions (
|
||||
value VARCHAR2(255) CONSTRAINT VERS_NN_VALUE NOT NULL,
|
||||
program VARCHAR2(255) CONSTRAINT VERS_NN_PROGM NOT NULL
|
||||
);
|
||||
|
||||
rem insert into versions (value, program) values ('other', 'TestProduct');
|
||||
|
||||
exit;
|
||||
12
mozilla/webtools/bugzilla/oracle/makevotestable.sql
Executable file
12
mozilla/webtools/bugzilla/oracle/makevotestable.sql
Executable file
@@ -0,0 +1,12 @@
|
||||
rem * Table to hold bug vote information in bugzilla
|
||||
rem * Contributed by David Lawrence <dkl@redhat.com>
|
||||
|
||||
drop table votes;
|
||||
|
||||
create table votes (
|
||||
who INTEGER CONSTRAINT VOTE_NN_WHO NOT NULL,
|
||||
bug_id INTEGER CONSTRAINT VOTE_NN_BUGID NOT NULL,
|
||||
count INTEGER CONSTRAINT VOTE_NN_COUNT NOT NULL
|
||||
);
|
||||
|
||||
exit;
|
||||
395
mozilla/webtools/bugzilla/oracle/migrate_all.pl
Executable file
395
mozilla/webtools/bugzilla/oracle/migrate_all.pl
Executable file
@@ -0,0 +1,395 @@
|
||||
#!/usr/bin/perl -w
|
||||
#
|
||||
# migrate.pl
|
||||
#
|
||||
|
||||
use DBI;
|
||||
use DBD::Oracle qw{:ora_types};
|
||||
|
||||
# database setup
|
||||
# Connect to Oracle Database
|
||||
$ENV{'ORACLE_HOME'} = "/opt/oracle/product/805/";
|
||||
$ENV{'ORACLE_SID'} = "bugzilla";
|
||||
$ENV{'TWO_TASK'} = "bugzilla";
|
||||
$ENV{'ORACLE_USERID'} = "bugzilla/bugzilla";
|
||||
my $oracle_name = "bugzilla";
|
||||
my $oracle_user = "bugzilla/bugzilla";
|
||||
my $oracle_date = "SYSDATE";
|
||||
my $oracle_dsn = "DBI:Oracle:$oracle_name";
|
||||
my $oracle_dbh = DBI->connect($oracle_dsn, $oracle_user, '', { RaiseError => 1 })
|
||||
|| die "Can't connect to database server: " . $DBI::errstr .
|
||||
" for $oracle_dsn, $oracle_user";
|
||||
print "\n\nConnected to Oracle database.\n";
|
||||
|
||||
$oracle_dbh->{LongReadLen} = 1000 * 1024; # large object
|
||||
$oracle_dbh->{LongTruncOk} = 0; # do not truncate
|
||||
|
||||
# Connect to Mysql Database
|
||||
my $mysql_name = "bugs";
|
||||
my $mysql_user = "bugs";
|
||||
my $mysql_dsn = "DBI:mysql:$mysql_name";
|
||||
my $mysql_date = "now()";
|
||||
$mysql_dbh = DBI->connect($mysql_dsn, $mysql_user, '', { RaiseError => 1})
|
||||
|| die "Can't connect to database server: " . $DBI::errstr .
|
||||
" for $mysql_dsn, $mysql_user";
|
||||
$mysql_dbh->{LongReadLen} = 1000 * 1024; # large object
|
||||
$mysql_dbh->{LongTruncOk} = 0; # do not truncate
|
||||
print "Connected to MySQL database.\n";
|
||||
|
||||
my $query = "";
|
||||
my $mysql_sth = "";
|
||||
my $oracle_sth = "";
|
||||
my $count = 1;
|
||||
|
||||
# grab a list of tables in mysql database
|
||||
my %tables;
|
||||
$query = "show tables";
|
||||
$mysql_sth = $mysql_dbh->prepare($query);
|
||||
$mysql_sth->execute();
|
||||
while (my @row = $mysql_sth->fetchrow_array()) {
|
||||
$tables{$row[0]} = [];
|
||||
}
|
||||
|
||||
#grab the columns associated with each of the tables
|
||||
foreach my $table (keys %tables) {
|
||||
$query = "show columns from $table";
|
||||
$mysql_sth = $mysql_dbh->prepare($query);
|
||||
$mysql_sth->execute();
|
||||
while (my @row = $mysql_sth->fetchrow_array()) {
|
||||
push (@{$tables{$table}}, $row[0]);
|
||||
}
|
||||
}
|
||||
|
||||
# print the table information
|
||||
#foreach my $table (keys %tables) {
|
||||
# print "\n$table\n";
|
||||
# foreach my $column (@{$tables{$table}}) {
|
||||
# print "\t$column\n";
|
||||
# }
|
||||
#}
|
||||
|
||||
|
||||
# for each table form insert statements in Oracle
|
||||
foreach my $table (keys %tables) {
|
||||
if ($table eq "bugs" ||
|
||||
$table eq "bugs_activity" ||
|
||||
$table eq "attachments" ||
|
||||
$table eq "longdescs" ||
|
||||
$table eq "logincookies" ||
|
||||
$table eq "errata" ||
|
||||
$table eq "type" ||
|
||||
$table eq "queries") {
|
||||
next;
|
||||
}
|
||||
$query = "select " . join (", ", @{$tables{$table}}) .
|
||||
" from $table";
|
||||
$mysql_sth = $mysql_dbh->prepare($query);
|
||||
$mysql_sth->execute();
|
||||
while (my @row = $mysql_sth->fetchrow_array()) {
|
||||
my @quoted = ();
|
||||
foreach my $field (@row) {
|
||||
push (@quoted, $oracle_dbh->quote($field));
|
||||
}
|
||||
$query = "insert into $table (" . join (", ", @{$tables{$table}}) .
|
||||
") values (" . join (", ", @quoted) . ")";
|
||||
# print $query . "\n";
|
||||
$oracle_sth = $oracle_dbh->prepare($query);
|
||||
$oracle_sth->execute();
|
||||
print "$count entry added to $table\n";
|
||||
$count++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# logincookies
|
||||
@columns = ( 'cookie',
|
||||
'userid',
|
||||
'cryptpassword',
|
||||
'hostname',
|
||||
'lastused');
|
||||
|
||||
$query = "select " . join (', ', @columns) . " from logincookies";
|
||||
$mysql_sth = $mysql_dbh->prepare($query);
|
||||
$mysql_sth->execute();
|
||||
|
||||
$count = 1;
|
||||
print "\n\n";
|
||||
|
||||
while (my @row = $mysql_sth->fetchrow_array()) {
|
||||
my $cookie = $oracle_dbh->quote($row[0]);
|
||||
my $userid = $oracle_dbh->quote($row[1]);
|
||||
my $cryptpassword = $oracle_dbh->quote($row[2]);
|
||||
my $hostname = $oracle_dbh->quote($row[3]);
|
||||
my $lastused = "TO_DATE(" . $oracle_dbh->quote($row[4]) . ", 'YYYYMMDDHH24MISS')";
|
||||
|
||||
$query = "insert into logincookies ( " .
|
||||
join (', ', @columns) . " ) " .
|
||||
"values ($cookie, $userid, $cryptpassword, " .
|
||||
"$hostname, $lastused)";
|
||||
# print $query . "\n";
|
||||
$oracle_sth = $oracle_dbh->prepare($query);
|
||||
$oracle_sth->execute();
|
||||
print "$count entry added to logincookies\n";
|
||||
$count++;
|
||||
}
|
||||
|
||||
|
||||
# bugs_activity
|
||||
@columns = ( 'bug_id',
|
||||
'who',
|
||||
'bug_when',
|
||||
'field',
|
||||
'oldvalue',
|
||||
'newvalue' );
|
||||
|
||||
$query = "select " . join (', ', @columns) . " from bugs_activity";
|
||||
$mysql_sth = $mysql_dbh->prepare($query);
|
||||
$mysql_sth->execute();
|
||||
|
||||
$count = 1;
|
||||
print "\n\n";
|
||||
|
||||
while (my @row = $mysql_sth->fetchrow_array()) {
|
||||
my $bug_id = $oracle_dbh->quote($row[0]);
|
||||
my $who = $oracle_dbh->quote($row[1]);
|
||||
my $bug_when = "TO_DATE(" .
|
||||
$oracle_dbh->quote($row[2]) . ", 'YYYY-MM-DD HH24:MI:SS')";
|
||||
my $field = $oracle_dbh->quote($row[3]);
|
||||
if (!defined($row[4])) {
|
||||
$row[4] = "";
|
||||
}
|
||||
my $oldvalue = $oracle_dbh->quote($row[4]);
|
||||
if (!defined($row[5])) {
|
||||
$row[5] = "";
|
||||
}
|
||||
my $newvalue = $oracle_dbh->quote($row[5]);
|
||||
|
||||
$query = "insert into bugs_activity ( " .
|
||||
join (', ', @columns) . " ) " .
|
||||
"values ($bug_id, $who, $bug_when, " .
|
||||
"$field, $oldvalue, $newvalue)";
|
||||
# print $query . "\n";
|
||||
$oracle_sth = $oracle_dbh->prepare($query);
|
||||
$oracle_sth->execute();
|
||||
print "$count entry added to bugs_activity\n";
|
||||
$count++;
|
||||
}
|
||||
|
||||
|
||||
# queries
|
||||
$query = "select userid, query_name, query from queries";
|
||||
$mysql_sth = $mysql_dbh->prepare($query);
|
||||
$mysql_sth->execute();
|
||||
|
||||
$count = 1;
|
||||
print "\n\n";
|
||||
|
||||
while (my @row = $mysql_sth->fetchrow_array()) {
|
||||
my $userid = $mysql_dbh->quote($row[0]);
|
||||
my $query_name = $mysql_dbh->quote($row[1]);
|
||||
my $query_long = $mysql_dbh->quote($row[2]);
|
||||
$oracle_sth = $oracle_dbh->prepare("insert into queries (userid, query_name, query) values ($userid, $query_name, ?)");
|
||||
$oracle_sth->bind_param(1, $query_long, { SQL_LONGVARCHAR => 1});
|
||||
$oracle_sth->execute();
|
||||
print "$count entry added to queries\n";
|
||||
$count++;
|
||||
}
|
||||
|
||||
|
||||
# attachments
|
||||
@columns = ( 'attach_id',
|
||||
'bug_id',
|
||||
'creation_ts',
|
||||
'description',
|
||||
'mimetype',
|
||||
'ispatch',
|
||||
'filename',
|
||||
'thedata',
|
||||
'submitter_id' );
|
||||
|
||||
$query = "select " . join (', ', @columns) . " from attachments";
|
||||
$mysql_sth = $mysql_dbh->prepare($query);
|
||||
$mysql_sth->execute();
|
||||
|
||||
$count = 1;
|
||||
print "\n\n";
|
||||
|
||||
while (my @row = $mysql_sth->fetchrow_array()) {
|
||||
my $attach_id = $oracle_dbh->quote($row[0]);
|
||||
my $bug_id = $oracle_dbh->quote($row[1]);
|
||||
my $creation_ts = "TO_DATE(" . $oracle_dbh->quote($row[2]) . ", 'YYYYMMDDHH24MISS')";
|
||||
my $desc = $oracle_dbh->quote($row[3]);
|
||||
my $mime = $oracle_dbh->quote($row[4]);
|
||||
my $ispatch = $oracle_dbh->quote($row[5]);
|
||||
my $filename = $oracle_dbh->quote($row[6]);
|
||||
# my $thedata = $oracle_dbh->quote( pack ('H*', $row[7]) );
|
||||
my $thedata = $oracle_dbh->quote($row[7]);
|
||||
my $submitter = $oracle_dbh->quote($row[8]);
|
||||
|
||||
$query = "insert into attachments ( " . join (', ', @columns) . " ) " .
|
||||
"values ($attach_id, $bug_id, $creation_ts, $desc, $mime, " .
|
||||
"$ispatch, $filename, :1, $submitter)";
|
||||
# print $query . "\n";
|
||||
$oracle_sth = $oracle_dbh->prepare($query);
|
||||
$oracle_sth->bind_param(1, $thedata, { ora_field => 'thedata', ora_type => ORA_BLOB });
|
||||
$oracle_sth->execute();
|
||||
print "$count entry added to attachments\n";
|
||||
$count++;
|
||||
}
|
||||
|
||||
|
||||
# long descriptions
|
||||
@columns = ( 'bug_id',
|
||||
'who',
|
||||
'bug_when',
|
||||
'thetext');
|
||||
|
||||
$query = "select " . join (', ', @columns) . " from longdescs";
|
||||
$mysql_sth = $mysql_dbh->prepare($query);
|
||||
$mysql_sth->execute();
|
||||
|
||||
$count = 1;
|
||||
print "\n\n";
|
||||
|
||||
while (my @row = $mysql_sth->fetchrow_array()) {
|
||||
my $bug_id = $oracle_dbh->quote($row[0]);
|
||||
my $who = $oracle_dbh->quote($row[1]);
|
||||
my $thetext = $oracle_dbh->quote($row[3]);
|
||||
my $bug_when = "TO_DATE(" . $oracle_dbh->quote($row[2]) . ", 'YYYY-MM-DD HH24:MI:SS')";
|
||||
|
||||
$query = "insert into longdescs ( " .
|
||||
join (', ', @columns) . " ) " .
|
||||
"values ($bug_id, $who, $bug_when, $thetext)";
|
||||
# print $query . "\n";
|
||||
$oracle_sth = $oracle_dbh->prepare($query);
|
||||
$oracle_sth->execute();
|
||||
print "$count entry added to long descriptions\n";
|
||||
$count++;
|
||||
}
|
||||
|
||||
|
||||
# the bugs themselves
|
||||
my %columns = ( 'bug_id' => '',
|
||||
'group_id' => '',
|
||||
'assigned_to' => '',
|
||||
'bug_file_loc' => '',
|
||||
'patch_file_loc' => '',
|
||||
'bug_severity' => '',
|
||||
'bug_status' => '',
|
||||
'view' => '',
|
||||
'creation_ts' => '',
|
||||
'delta_ts' => '',
|
||||
'short_desc' => '',
|
||||
'long_desc' => '',
|
||||
'op_sys' => '',
|
||||
'priority' => '',
|
||||
'product' => '',
|
||||
'rep_platform' => '',
|
||||
'reporter' => '',
|
||||
'version' => '',
|
||||
'release' => '',
|
||||
'component' => '',
|
||||
'resolution' => '',
|
||||
'class' => '',
|
||||
'target_milestone' => '',
|
||||
'qa_contact' => '',
|
||||
'status_whiteboard' => '',
|
||||
'groupset' => '',
|
||||
'votes' => '');
|
||||
|
||||
my @columns_select = keys %columns;
|
||||
my @oracle_columns;
|
||||
my $longdesc = "";
|
||||
|
||||
# all this because Oracle cannot have a column name of 'view'
|
||||
foreach my $column (@columns_select) {
|
||||
if ($column eq 'view') {
|
||||
push (@oracle_columns, 'bug_view');
|
||||
} else {
|
||||
push (@oracle_columns, $column);
|
||||
}
|
||||
}
|
||||
|
||||
$query = "select " . join (', ', @columns_select) . " from bugs";
|
||||
# print $query . "\n";
|
||||
$mysql_sth = $mysql_dbh->prepare($query);
|
||||
$mysql_sth->execute();
|
||||
|
||||
$count = 1;
|
||||
print "\n\n";
|
||||
|
||||
while (my @row = $mysql_sth->fetchrow_array()) {
|
||||
my $count = 0;
|
||||
foreach my $column (@columns_select) {
|
||||
$columns{$column} = $row[$count];
|
||||
$count++;
|
||||
}
|
||||
|
||||
foreach my $column (@columns_select) {
|
||||
if (!defined($columns{$column})) {
|
||||
$columns{$column} = '';
|
||||
}
|
||||
if ($column eq 'delta_ts') {
|
||||
$columns{$column} = "TO_DATE('$columns{$column}', 'YYYYMMDDHH24MISS')";
|
||||
next;
|
||||
}
|
||||
if ($column eq 'creation_ts') {
|
||||
$columns{$column} = "TO_DATE('$columns{$column}', 'YYYY-MM-DD HH24-MI-SS')";
|
||||
next;
|
||||
}
|
||||
if ($column eq "long_desc") {
|
||||
$longdesc = $columns{$column};
|
||||
$columns{$column} = ":1";
|
||||
next;
|
||||
}
|
||||
$columns{$column} = $oracle_dbh->quote($columns{$column});
|
||||
}
|
||||
|
||||
my @columns_insert;
|
||||
foreach my $column (@columns_select) {
|
||||
push (@columns_insert, $columns{$column});
|
||||
}
|
||||
|
||||
$query = "insert into bugs ( " . join (', ', @oracle_columns) . " ) " .
|
||||
"values (" . join (', ', @columns_insert) . " )";
|
||||
# print $query . "\n";
|
||||
$oracle_sth = $oracle_dbh->prepare($query);
|
||||
$oracle_sth->bind_param(1, $longdesc, {SQL_LONGVARCHAR => 1 });
|
||||
$oracle_sth->execute();
|
||||
print "$count entry added to bugs\n";
|
||||
$count++;
|
||||
}
|
||||
|
||||
|
||||
# lastly, created the proper sequences
|
||||
%tables = ( 'bugs' => 'bug_id',
|
||||
'logincookies' => 'cookie',
|
||||
'attachments' => 'attach_id',
|
||||
'products' => 'id',
|
||||
'profiles' => 'userid',
|
||||
'fielddefs' => 'fieldid');
|
||||
foreach my $table (keys %tables) {
|
||||
eval {
|
||||
$query = "drop sequence " . $table . "_seq";
|
||||
print $query . "\n";
|
||||
$oracle_sth = $oracle_dbh->prepare($query);
|
||||
$oracle_sth->execute();
|
||||
};
|
||||
if ($@) { print "No sequence for $table. Continuing...\n" }
|
||||
$query = "select max($tables{$table}) from $table";
|
||||
print $query . "\n";
|
||||
$oracle_sth = $oracle_dbh->prepare($query);
|
||||
$oracle_sth->execute();
|
||||
my @result = $oracle_sth->fetchrow_array();
|
||||
my $nextval = $result[0] + 1;
|
||||
$query = "create sequence " . $table . "_seq start with $nextval increment by 1";
|
||||
print $query . "\n";
|
||||
$oracle_sth = $oracle_dbh->prepare($query);
|
||||
$oracle_sth->execute();
|
||||
}
|
||||
|
||||
print "\n\nAll Done!\n";
|
||||
|
||||
$mysql_dbh->disconnect();
|
||||
$oracle_dbh->disconnect();
|
||||
|
||||
104
mozilla/webtools/bugzilla/template/bugform_mozilla.tmpl
Normal file
104
mozilla/webtools/bugzilla/template/bugform_mozilla.tmpl
Normal file
@@ -0,0 +1,104 @@
|
||||
<FORM NAME=changeform METHOD=POST ACTION="process_bug.cgi">
|
||||
<INPUT TYPE=HIDDEN NAME="delta_ts" VALUE="[+ $bugform{'delta_ts'} +]">
|
||||
<INPUT TYPE=HIDDEN NAME="longdesclength" VALUE="[+ $bugform{'longdesclength'} +]">
|
||||
<INPUT TYPE=HIDDEN NAME="id" VALUE="[+ $bugform{'id'} +]">
|
||||
<INPUT TYPE=HIDDEN NAME="was_assigned_to" VALUE="[+ $bugform{'assigned_to'} +]">
|
||||
|
||||
<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0><TR>
|
||||
<TD ALIGN=RIGHT><B>Bug#:</B></TD><TD><A HREF="show_bug.cgi?id=[+ $bugform{'id'} +]">[+ $bugform{'id'} +]</A></TD>
|
||||
<TD ALIGN=RIGHT><B><A HREF="bug_status.html#rep_platform">Platform:</A></B></TD>
|
||||
<TD>
|
||||
|
||||
<!-- start platform selection -->
|
||||
[+ $bugform{'platform_popup'} +]
|
||||
<!-- end platform selection -->
|
||||
|
||||
</TD>
|
||||
<TD ALIGN=RIGHT><B>Version:</B></TD>
|
||||
<TD>
|
||||
|
||||
<!-- start version selection -->
|
||||
[+ $bugform{'version_popup'} +]
|
||||
<!-- end version selection -->
|
||||
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=RIGHT><B>Product:</B></TD>
|
||||
<TD>
|
||||
|
||||
<!-- start product selection -->
|
||||
[+ $bugform{'product_popup'} +]
|
||||
<!-- end product selection -->
|
||||
|
||||
</TD>
|
||||
<TD ALIGN=RIGHT><B>OS:</B></TD>
|
||||
<TD>
|
||||
|
||||
<!-- start opsys selection -->
|
||||
[+ $bugform{'opsys_popup'} +]
|
||||
<!-- end opsys selection -->
|
||||
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=RIGHT><B><A HREF="bug_status.html">Status:</A></B></TD>
|
||||
<TD>[+ $bug_form{'bug_status'} +]</TD>
|
||||
<TD ALIGN=RIGHT><B><A HREF="bug_status.html#priority">Priority:</A></B></TD>
|
||||
<TD>
|
||||
|
||||
<!-- start priority selection -->
|
||||
[+ $bugform{'priority_popup'} +]
|
||||
<!-- end priority selection -->
|
||||
|
||||
</TD>
|
||||
<TD ALIGN=RIGHT><B>Cc:</B></TD>
|
||||
<TD>[+ $bug_form{'cc_element'} +]</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=RIGHT><B><A HREF="bug_status.html">Resolution:</A></B></TD>
|
||||
<TD>[+ $bugform{'resolution'} +]</TD>
|
||||
<TD ALIGN=RIGHT><B><A HREF="bug_status.html#severity">Severity:</A></B></TD>
|
||||
<TD>
|
||||
|
||||
<!-- start severity selection -->
|
||||
[+ $bugform{'severity_popup'} +]
|
||||
<!-- end severity selection -->
|
||||
|
||||
</TD>
|
||||
<TD ALIGN=RIGHT><B><A HREF="describecomponents.cgi?product=Red%20Hat%20Linux">Component:</A></B></TD>
|
||||
<TD>
|
||||
|
||||
<!-- start component selection -->
|
||||
[+ $bugform{'component_popup'} +]
|
||||
<!-- end component selection -->
|
||||
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=RIGHT><B><A HREF="bug_status.html#assigned_to">Assigned To:
|
||||
</A></B></TD>
|
||||
<TD>[+ $bugform{'assigned_to'} +]</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN="RIGHT"><B>URL:</B>
|
||||
<TD COLSPAN=6>[+ $bugform{'bugfile_element'} +]</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN="RIGHT"><B>Summary:</B>
|
||||
<TD COLSPAN=6>[+ $bugform{'summary_element'} +]</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=right><B>Attachments:</B></TD>
|
||||
<TD COLSPAN=6>[+ bugform{'attach_element'} +]</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<TABLE>
|
||||
<TR>
|
||||
|
||||
<!-- start depends selection -->
|
||||
[+ $bugform{'depends_element'} +]
|
||||
<!-- end depends selection -->
|
||||
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<BR>
|
||||
<B>Additional Comments:</B>
|
||||
<BR>
|
||||
<TEXTAREA WRAP=HARD NAME=comment ROWS=5 COLS=80></TEXTAREA><BR>
|
||||
|
||||
190
mozilla/webtools/bugzilla/template/bugform_redhat.tmpl
Normal file
190
mozilla/webtools/bugzilla/template/bugform_redhat.tmpl
Normal file
@@ -0,0 +1,190 @@
|
||||
<FORM NAME=changeform METHOD=POST ACTION="process_bug.cgi">
|
||||
<INPUT TYPE=HIDDEN NAME="delta_ts" VALUE="[+ $::bug_form{'delta_ts'} +]">
|
||||
<INPUT TYPE=HIDDEN NAME="longdesclength" VALUE="[+ $::bug_form{'longdesclength'} +]">
|
||||
<INPUT TYPE=HIDDEN NAME="id" VALUE="[+ $::bug_form{'id'} +]">
|
||||
<INPUT TYPE=HIDDEN NAME="was_assigned_to" VALUE="[+ $::bug_form{'was_assigned_to'} +]">
|
||||
|
||||
<TABLE CELLPADDING=3 CELLSPACING=0 BORDER=1 WIDTH=800 ALIGN=center>
|
||||
<TR BGCOLOR="#CFCFCF">
|
||||
<TH ALIGN=left>Product - Version</TH>
|
||||
<TH ALIGN=left>Component</TH>
|
||||
<TH ALIGN=left>Status</TH>
|
||||
<TH ALIGN=left>Short Summary</TH>
|
||||
</TR><TR BGCOLOR="ECECEC">
|
||||
<TD ALIGN=left>[+ $::bug_form{'product'} +] - [+ $::bug_form{'version'} +]</TD>
|
||||
<TD ALIGN=left>[+ $::bug_form{'component'} +]</TD>
|
||||
<TD ALIGN=left>[+ $::bug_form{'bug_status'} +]</TD>
|
||||
<TD ALIGN=left>[+ $::bug_form{'short_desc'} +]</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE WIDTH=800 CELLSPACING=0 CELLPADDING=3 BORDER=1 ALIGN=center>
|
||||
<TR BGCOLOR="CFCFCF">
|
||||
<TD ALIGN=left><B>Opened by</B> <A HREF="mailto:[+ $::bug_form{'reporter'} +]">[+ $::bug_form{'reporter'} +]</A>
|
||||
<B>on</B> [+ $::bug_form{'creation_ts'} +] <B>Long Description</B></TD>
|
||||
<TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left><PRE>
|
||||
<!-- start long description -->
|
||||
|
||||
[+ $::bug_form{'description'} +]
|
||||
|
||||
<!-- end long description -->
|
||||
</PRE></TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE WIDTH=800 CELLSPACING=0 CELLPADDING=4 BORDER=1 ALIGN=center>
|
||||
<TR BGCOLOR="#CFCFCF">
|
||||
<TH ALIGN=left><B>Additional Information</B></TH>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD>
|
||||
<TABLE WIDTH="100%">
|
||||
<TR>
|
||||
<TD ALIGN=right><B>Bug#:</B></TD><TD><A HREF="show_bug.cgi?id=[+ $::bug_form{'bug_id'} +]">[+ $::bug_form{'bug_id'} +]</A></TD>
|
||||
<TD ALIGN=right><B>Product:</B></TD>
|
||||
<TD>
|
||||
<!-- start product selection -->
|
||||
|
||||
[+ $::bug_form{'product_popup'} +]
|
||||
|
||||
<!-- end product selction -->
|
||||
</TD>
|
||||
<TD ALIGN=right><B>Version:</B></TD>
|
||||
<TD>
|
||||
<!-- start version selection -->
|
||||
|
||||
[+ $::bug_form{'version_popup'} +]
|
||||
|
||||
<!-- end version selection -->
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=right><B><A HREF="bug_status.cgi#rep_platform">Platform:</A></B></TD>
|
||||
<TD>
|
||||
<!-- start platform selection -->
|
||||
|
||||
[+ $::bug_form{'platform_popup'} +]
|
||||
|
||||
<!-- end platform selection -->
|
||||
</TD>
|
||||
<TD ALIGN=right><B>Reporter:</B></TD><TD>[+ $::bug_form{'reporter'} +]</TD>
|
||||
<TD ALIGN=right>
|
||||
<!-- start component selection -->
|
||||
|
||||
[+ $::bug_form{'component_popup'} +]
|
||||
|
||||
<!-- end component selection -->
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=right><B><A HREF="bug_status.cgi">Status:</A></B></TD>
|
||||
<TD>[+ $::bug_form{'bug_status'} +]</TD>
|
||||
<TD ALIGN=right><B><A HREF="bug_status.cgi#priority">Priority:</A></B></TD>
|
||||
<TD>
|
||||
<!-- start priority selection -->
|
||||
|
||||
[+ $::bug_form{'priority_popup'} +]
|
||||
|
||||
<!-- end priority selection -->
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=right><B><A HREF="bug_status.cgi">Resolution:</A></B></TD>
|
||||
<TD>[+ $::bug_form{'resolution'} +]</TD>
|
||||
<TD ALIGN=right><B><A HREF="bug_status.cgi#severity">Severity:</A></B></TD>
|
||||
<TD>
|
||||
<!-- start severity selection -->
|
||||
|
||||
[+ $::bug_form{'sev_popup'} +]
|
||||
|
||||
<!-- end severity selection -->
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=right><B><A HREF="bug_status.cgi#assigned_to">Assigned To:</A></B></TD>
|
||||
<TD>[+ $::bug_form{'assigned_to'} +]</TD>
|
||||
<TD ALIGN=center> </TD>
|
||||
<TD ALIGN=right COLSPAN=2><B><A HREF="bug_status.cgi#component">Component Text:</A></B></TD>
|
||||
<TD>[+ $::bug_form{'component_text'} +]</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<P>
|
||||
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=3>
|
||||
<TR>
|
||||
<TH ALIGN=right><B>Cc:</B></TH>
|
||||
<TD ALIGN=left>[+ $::bug_form{'cc_element'} +]</TD>
|
||||
</TR>
|
||||
[+ $::bug_form{'qacontact_element'} +]
|
||||
[+ $::bug_form{'url_element'} +]
|
||||
[+ $::bug_form{'summary_element'} +]
|
||||
[+ $::bug_form{'status_whiteboard'} +]
|
||||
<TR>
|
||||
<TD ALIGN=right VALIGN=top><B>Attachments:</B></TD>
|
||||
<TD ALIGN=left>
|
||||
<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=3>
|
||||
<TR>
|
||||
<TD COLSPAN=3>[+ $::bug_form{'attachment_element'} +]</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<!-- start dependency selection -->
|
||||
|
||||
[+ $::bug_form{'depends_element'} +]
|
||||
|
||||
<!-- end dependency selection -->
|
||||
</TD>
|
||||
</TR><TR BGCOLOR="#CFCFCF">
|
||||
<TH ALIGN=left><B><A HREF=bug_status.cgi#description>Additional Comments</A></B></TH>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=center><TEXTAREA WRAP=HARD NAME=comment ROWS=10 COLS=80></TEXTAREA></TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE CELLPADDING=3 WIDTH=800 CELLSPACING=0 ALIGN=center>
|
||||
<TR>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start resolution selection -->
|
||||
|
||||
[+ $::bug_form{'resolution_change'} +]
|
||||
|
||||
<!-- end resolution selection -->
|
||||
</TD>
|
||||
<TD ALIGN=right VALIGN=top>
|
||||
<!-- start group selection -->
|
||||
|
||||
[+ $::bug_form{'group_change'} +]
|
||||
|
||||
<!-- end group selection -->
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE WIDTH=800 CELLPADDING=3 CELLSPACING=0 ALIGN=center>
|
||||
<TR>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start commit selection -->
|
||||
|
||||
[+ $::bug_form{'commit_change'} +]
|
||||
|
||||
<!-- end commit selection -->
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE ALIGN=center WIDTH=800><TR><TD ALIGN=left>
|
||||
<B>
|
||||
<A HREF="show_activity.cgi?id=[+ $::bug_form{'id'} +]">[View Bug Activity]</A>
|
||||
<A HREF="long_list.cgi?buglist=[+ $::bug_form{'id'} +]">[Format For Printing]</A>
|
||||
</B>
|
||||
</TD></TR></TABLE>
|
||||
<P>
|
||||
<HR ALIGN=center WIDTH=800>
|
||||
<P>
|
||||
10
mozilla/webtools/bugzilla/template/contract_redhat.tmpl
Normal file
10
mozilla/webtools/bugzilla/template/contract_redhat.tmpl
Normal file
@@ -0,0 +1,10 @@
|
||||
<TABLE WIDTH=800 CELLPADDING=4 CELLSPACING=0 BORDER=1>
|
||||
<TR>
|
||||
<TD ALIGN=left>
|
||||
<B><FONT SIZE=+1 COLOR=red>Attention:</FONT> I have [+ $contract_form{'count'} +]
|
||||
bug(s) that are marked as contract priority.
|
||||
Take me to this [+ $contract_form{'link'} +] list</A>.</B>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
29
mozilla/webtools/bugzilla/template/footer_mozilla.tmpl
Normal file
29
mozilla/webtools/bugzilla/template/footer_mozilla.tmpl
Normal file
@@ -0,0 +1,29 @@
|
||||
<P>
|
||||
<TABLE WIDTH=800 BGCOLOR="#BFBFBF" BORDER=0 CELLPADDING=2 ALIGN=left>
|
||||
<TR>
|
||||
<TD ALIGN=center VALIGN=center>
|
||||
<TABLE BGCOLOR="#ECECEC" BORDER=0 CELLSPACING=3 CELLPADDING=2>
|
||||
<TR>
|
||||
<TD WIDTH="50%" ALIGN="center" VALIGN="center">
|
||||
<A HREF="index.cgi">[Home]</A>
|
||||
<A HREF="enter_bug.cgi">[New Bug]</A>
|
||||
<A HREF="query.cgi">[Query Bugs]</A>
|
||||
<A HREF="redhat-faq.cgi">[Help]</A>
|
||||
<A HREF="relogin.cgi">[LogOut]</A>
|
||||
<A HREF="http://www.redhat.com/support/updates.html">[Errata]</A></CENTER>
|
||||
<HR WIDTH="75%">
|
||||
<CENTER>For questions or comments on bugzilla send mail to
|
||||
<A HREF="mailto:bugzilla-owner@redhat.com">bugzilla-owner@redhat.com</A></CENTER></TD>
|
||||
<TD WIDTH="50%" ALIGN="center" VALIGN="center">
|
||||
<CENTER><FONT-=2>This is <B>Bugzilla</B>: the Mozilla bug system. For more
|
||||
information about what Bugzilla is and what it can do, see
|
||||
<A HREF="http://www.mozilla.org/">mozilla.org</A>’s
|
||||
<A HREF="http://www.mozilla.org/bugs/"><B>bug pages</B></A></FONT></CENTER>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</BODY></HTML>
|
||||
|
||||
29
mozilla/webtools/bugzilla/template/footer_redhat.tmpl
Normal file
29
mozilla/webtools/bugzilla/template/footer_redhat.tmpl
Normal file
@@ -0,0 +1,29 @@
|
||||
<P>
|
||||
<TABLE WIDTH=800 BGCOLOR="#BFBFBF" BORDER=0 CELLPADDING=2 ALIGN=center>
|
||||
<TR>
|
||||
<TD ALIGN=center VALIGN=center>
|
||||
<TABLE BGCOLOR="#ECECEC" BORDER=0 CELLSPACING=3 CELLPADDING=2>
|
||||
<TR>
|
||||
<TD WIDTH="50%" ALIGN="center" VALIGN="center">
|
||||
<A HREF="index.cgi">[Home]</A>
|
||||
<A HREF="enter_bug.cgi">[New Bug]</A>
|
||||
<A HREF="query.cgi">[Query Bugs]</A>
|
||||
<A HREF="redhat-faq.cgi">[Help]</A>
|
||||
<A HREF="relogin.cgi">[LogOut]</A>
|
||||
<A HREF="http://www.redhat.com/support/updates.html">[Errata]</A></CENTER>
|
||||
<HR WIDTH="75%">
|
||||
<CENTER>For questions or comments on bugzilla send mail to
|
||||
<A HREF="mailto:bugzilla-owner@redhat.com">bugzilla-owner@redhat.com</A></CENTER></TD>
|
||||
<TD WIDTH="50%" ALIGN="center" VALIGN="center">
|
||||
<CENTER><FONT-=2>This is <B>Bugzilla</B>: the Mozilla bug system. For more
|
||||
information about what Bugzilla is and what it can do, see
|
||||
<A HREF="http://www.mozilla.org/">mozilla.org</A>’s
|
||||
<A HREF="http://www.mozilla.org/bugs/"><B>bug pages</B></A></FONT></CENTER>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</BODY></HTML>
|
||||
|
||||
45
mozilla/webtools/bugzilla/template/header_mozilla.tmpl
Normal file
45
mozilla/webtools/bugzilla/template/header_mozilla.tmpl
Normal file
@@ -0,0 +1,45 @@
|
||||
<HEAD>
|
||||
<TITLE>[+ $title +]</TITLE>
|
||||
</HEAD>
|
||||
|
||||
<BODY BGCOLOR="#FFFFFF" TEXT="#000000"
|
||||
LINK="#DD0000" VLINK="#880000" ALINK="#FF0000" >
|
||||
<TABLE WIDTH=800 BORDER=0 CELLSPACING=0 CELLPADDING=0>
|
||||
<TR BGCOLOR="#CC0000">
|
||||
<TD WIDTH=75 HEIGHT="69">
|
||||
<A HREF="http://www.redhat.com">
|
||||
<IMG SRC="images/logo_big2.gif" WIDTH="81" HEIGHT="69" ALT="logo" BORDER="0"></A></TD>
|
||||
<TD WIDTH=150 VALIGN="TOP">
|
||||
<A HREF="http://www.redhat.com">
|
||||
<IMG SRC="images/redhat.gif" WIDTH="142" HEIGHT="41" ALT="redhat.com" BORDER="0">
|
||||
<IMG SRC="images/redhat_tag.gif" WIDTH="244" HEIGHT="15" ALT="logo" BORDER="0"></A></TD>
|
||||
<TD WIDTH=300 VALIGN=center ALIGN=center>
|
||||
<!-- <IMG SRC="images/bugzilla_logo.png"></TD> -->
|
||||
<FONT COLOR=white SIZE=+4>Develzilla</FONT>
|
||||
<TD ALIGN=center VALIGN=bottom><FONT COLOR=white>
|
||||
<FORM METHOD=GET ACTION="/myzilla/show_bug.cgi">
|
||||
<INPUT TYPE=SUBMIT VALUE="Show"> bug # <INPUT NAME=id SIZE=6></FORM></FONT></TD>
|
||||
</TR><TR BGCOLOR="#8F8F8F">
|
||||
<TD COLSPAN=2 HEIGHT=30 ALIGN=left VALIGN=center>
|
||||
<B><FONT SIZE=+1 COLOR="#FFFFFF"> [+ $header +]
|
||||
</FONT></B></TD>
|
||||
<TD COLSPAN=2 ALIGN=right VALIGN=center>
|
||||
<TABLE WIDTH="100%" VALIGN=center>
|
||||
<TR>
|
||||
<TD ALIGN=left>
|
||||
<FONT COLOR="#FFFFFF">
|
||||
[+ $login +]
|
||||
</FONT>
|
||||
</TD>
|
||||
<TD ALIGN=right>
|
||||
<FONT COLOR="#FFFFFF">
|
||||
[+ $navigation +]
|
||||
</FONT>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<P>
|
||||
|
||||
45
mozilla/webtools/bugzilla/template/header_redhat.tmpl
Normal file
45
mozilla/webtools/bugzilla/template/header_redhat.tmpl
Normal file
@@ -0,0 +1,45 @@
|
||||
<HEAD>
|
||||
<TITLE>[+ $title +]</TITLE>
|
||||
</HEAD>
|
||||
|
||||
<BODY BGCOLOR="#FFFFFF" TEXT="#000000"
|
||||
LINK="#DD0000" VLINK="#880000" ALINK="#FF0000" >
|
||||
<TABLE WIDTH=800 BORDER=0 CELLSPACING=0 CELLPADDING=0 ALIGN=center>
|
||||
<TR BGCOLOR="#CC0000">
|
||||
<TD WIDTH=75 HEIGHT="69">
|
||||
<A HREF="http://www.redhat.com">
|
||||
<IMG SRC="images/logo_big2.gif" WIDTH="81" HEIGHT="69" ALT="logo" BORDER="0"></A></TD>
|
||||
<TD WIDTH=150 VALIGN="TOP">
|
||||
<A HREF="http://www.redhat.com">
|
||||
<IMG SRC="images/redhat.gif" WIDTH="142" HEIGHT="41" ALT="redhat.com" BORDER="0">
|
||||
<IMG SRC="images/redhat_tag.gif" WIDTH="244" HEIGHT="15" ALT="logo" BORDER="0"></A></TD>
|
||||
<TD WIDTH=300 VALIGN=center ALIGN=center>
|
||||
<!-- <IMG SRC="images/bugzilla_logo.png"></TD> -->
|
||||
<FONT COLOR=white SIZE=+4>Develzilla</FONT>
|
||||
<TD ALIGN=center VALIGN=bottom><FONT COLOR=white>
|
||||
<FORM METHOD=GET ACTION="/myzilla/show_bug.cgi">
|
||||
<INPUT TYPE=SUBMIT VALUE="Show"> bug # <INPUT NAME=id SIZE=6></FORM></FONT></TD>
|
||||
</TR><TR BGCOLOR="#8F8F8F">
|
||||
<TD COLSPAN=2 HEIGHT=30 ALIGN=left VALIGN=center>
|
||||
<B><FONT SIZE=+1 COLOR="#FFFFFF"> [+ $header +]
|
||||
</FONT></B></TD>
|
||||
<TD COLSPAN=2 ALIGN=right VALIGN=center>
|
||||
<TABLE WIDTH="100%" VALIGN=center>
|
||||
<TR>
|
||||
<TD ALIGN=left>
|
||||
<FONT COLOR="#FFFFFF">
|
||||
[+ $login +]
|
||||
</FONT>
|
||||
</TD>
|
||||
<TD ALIGN=right>
|
||||
<FONT COLOR="#FFFFFF">
|
||||
[+ $navigation +]
|
||||
</FONT>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<P>
|
||||
|
||||
77
mozilla/webtools/bugzilla/template/index_mozilla.tmpl
Normal file
77
mozilla/webtools/bugzilla/template/index_mozilla.tmpl
Normal file
@@ -0,0 +1,77 @@
|
||||
<!--
|
||||
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):
|
||||
|
||||
Contributor(s): Terry Weissman <terry@mozilla.org>
|
||||
-->
|
||||
<TABLE BORDER=0 CELLPADDING=12 CELLSPACING=0 WIDTH="100%">
|
||||
<TR>
|
||||
|
||||
<TD>
|
||||
|
||||
<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=2>
|
||||
|
||||
<TR><TD VALIGN=TOP ALIGN=CENTER NOWRAP>
|
||||
|
||||
<FONT SIZE="+3"><B><NOBR>Main Page</NOBR></B></FONT>
|
||||
|
||||
</TD></TR><TR><TD VALIGN=TOP ALIGN=CENTER>
|
||||
|
||||
<B></B>
|
||||
|
||||
</TD></TR>
|
||||
|
||||
</TABLE>
|
||||
|
||||
</TD>
|
||||
|
||||
<TD>
|
||||
|
||||
This is <B>Bugzilla</B>: the Mozilla bug system. For more
|
||||
information about what Bugzilla is and what it can do, see
|
||||
<A HREF="http://www.mozilla.org/">mozilla.org</A>'s
|
||||
<A HREF="http://www.mozilla.org/bugs/"><B>bug pages</B></A>.
|
||||
</TD></TR></TABLE>
|
||||
|
||||
|
||||
<img align=right width=329 height=220 src=ant.jpg border=2>
|
||||
|
||||
|
||||
This is where we put in lots of nifty words explaining all about
|
||||
bugzilla.
|
||||
|
||||
<p>
|
||||
|
||||
But it all boils down to a choice of:
|
||||
<br>
|
||||
<a href="query.cgi">Query existing bug reports</a><br>
|
||||
<a href="enter_bug.cgi">Enter a new bug report</a><br>
|
||||
<a href="reports.cgi">Get summary reports</a><br>
|
||||
<p>
|
||||
<a href="createaccount.cgi">Open a new Bugzilla account</a><br>
|
||||
<a href="relogin.cgi">Forget the currently stored login</a><br>
|
||||
<a href="userprefs.cgi">Change password or user preferences</a><br>
|
||||
<FORM METHOD=GET ACTION="show_bug.cgi">
|
||||
<INPUT TYPE=SUBMIT VALUE="Find"> bug # <INPUT NAME=id SIZE=6></FORM>
|
||||
<SCRIPT LANGUAGE="JavaScript">
|
||||
document.forms[0].id.focus()
|
||||
</SCRIPT>
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
||||
62
mozilla/webtools/bugzilla/template/index_redhat.tmpl
Normal file
62
mozilla/webtools/bugzilla/template/index_redhat.tmpl
Normal file
@@ -0,0 +1,62 @@
|
||||
<TABLE WIDTH=800 CELLPADDING=2 CELLSPACING=0 ALIGN=center>
|
||||
<TR>
|
||||
<TD WIDTH="70%">
|
||||
<TABLE CELLPADDING=3 CELLSPACING=0 BORDER=1 WIDTH="100%" HEIGHT="100%">
|
||||
<TR BGCOLOR="#BFBFBF">
|
||||
<TH ALIGN=left><B>Bug Options</B></TH>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
<A HREF="query.cgi">Query existing bug reports</A><BR>
|
||||
<A HREF="enter_bug.cgi">Enter a new bug report</A><BR>
|
||||
<A HREF="reports.cgi">Get summary reports</A><BR>
|
||||
</TD>
|
||||
</TABLE>
|
||||
<P>
|
||||
<TABLE CELLPADDING=3 CELLSPACING=0 BORDER=1 WIDTH="100%">
|
||||
<TR BGCOLOR="#BFBFBF">
|
||||
<TH ALIGN=left><B>Member Options</B></TH>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
<A HREF="createaccount.cgi">Open a new Bugzilla account</A><BR>
|
||||
<A HREF="relogin.cgi">Forget the currently stored login</A><BR>
|
||||
<A HREF="changepassword.cgi">Change password or user preferences</A><BR>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<P>
|
||||
<TABLE CELLPADDING=5 CELLSPACING=0 BORDER=1 WIDTH="100%" HEIGHT="100%">
|
||||
<TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
Statistics for this web-site can be found <A HREF="/webalizer/">here</A>.
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
<TD ALIGN=right WIDTH="30%">
|
||||
<img align=right width=329 height=220 src="images/ant.jpg" border=2>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE WIDTH=800 BORDER=0 CELLPADDING=2 CELLSPACING=0 ALIGN=center>
|
||||
<TR BGCOLOR="#BFBFBF">
|
||||
<TD ALIGN=left><B>Tools Provided By</B></TD>
|
||||
</TR><TR BGCOLOR="#FFFFFF">
|
||||
<TD ALIGN=center>
|
||||
<TABLE BORDER=0 WIDTH=100% CELLPADDING=3 CELLSPACING=0>
|
||||
<TR>
|
||||
<TD ALIGN=center><A HREF="http://www.apache.org"><IMG SRC="images/apache_pb.gif" BORDER=0></A></TD>
|
||||
<TD ALIGN=center><A HREF="http://www.mysql.com"><IMG SRC="images/mysql.gif" BORDER=0></A></TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=center><A HREF="http://www.perl.com"><IMG SRC="images/sourceforperl_85.gif" BORDER=0></A></TD>
|
||||
<TD ALIGN=center><A HREF="http://www.mozilla.org"><IMG SRC="images/mozilla-banner.gif" BORDER=0></A></TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR><TR BGCOLOR="#BFBFBF">
|
||||
<TD ALIGN=center>If you are interested in downloading <I>this</I> version of Bugzilla, you can from
|
||||
<A HREF="ftp://people.redhat.com/dkl">here</A>.</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
216
mozilla/webtools/bugzilla/template/query_mozilla.tmpl
Normal file
216
mozilla/webtools/bugzilla/template/query_mozilla.tmpl
Normal file
@@ -0,0 +1,216 @@
|
||||
<!-- start javascript -->
|
||||
[+ $query_form{'javascript'} +]
|
||||
<!-- end javascript -->
|
||||
|
||||
<FORM METHOD=GET ACTION="buglist.cgi">
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<th align=left><A HREF="bug_status.html">Status</a>:</th>
|
||||
<th align=left><A HREF="bug_status.html">Resolution</a>:</th>
|
||||
<th align=left><A HREF="bug_status.html#rep_platform">Platform</a>:</th>
|
||||
<th align=left><A HREF="bug_status.html#op_sys">OpSys</a>:</th>
|
||||
<th align=left><A HREF="bug_status.html#priority">Priority</a>:</th>
|
||||
<th align=left><A HREF="bug_status.html#severity">Severity</a>:</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align=left valign=top>
|
||||
|
||||
<!-- start status selection -->
|
||||
[+ $query_form{'status_popup'} +]
|
||||
<!-- end status selection -->
|
||||
|
||||
</td>
|
||||
<td align=left valign=top>
|
||||
|
||||
<!-- start resolution selection -->
|
||||
[+ $query_form{'resolution_popup'} +]
|
||||
<!-- end resolution selection -->
|
||||
|
||||
</td>
|
||||
<td align=left valign=top>
|
||||
|
||||
<!-- start platform selection -->
|
||||
[+ $query_form{'platform_popup'} +]
|
||||
<!-- end platform selection -->
|
||||
|
||||
</td>
|
||||
<td align=left valign=top>
|
||||
|
||||
<!-- start opsys selection -->
|
||||
[+ $query_form{'opsys_popup'} +]
|
||||
<!-- end opsys selection -->
|
||||
|
||||
</td>
|
||||
<td align=left valign=top>
|
||||
|
||||
<!-- start priority selection -->
|
||||
[+ $query_form{'priority_popup'} +]
|
||||
<!-- end priority selection -->
|
||||
|
||||
</td>
|
||||
<td align=left valign=top>
|
||||
|
||||
<!-- start severity selection -->
|
||||
[+ $query_form{'severity_popup'} +]
|
||||
<!-- end severity selection -->
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<p>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td colspan=2>
|
||||
|
||||
<!-- start email selection and search -->
|
||||
[+ $query_form{'emailinput1'} +]
|
||||
<P>
|
||||
[+ $query_form{'emailinput2'} +]
|
||||
<!-- end email selection and search -->
|
||||
|
||||
</TD>
|
||||
</TR>
|
||||
<TR>
|
||||
<TD COLSPAN="3">
|
||||
|
||||
<!-- start bugidtype selection -->
|
||||
[+ $query_form{'bugidtype_popup'} +]
|
||||
bugs numbered:
|
||||
[+ $query_form{'bugidtype_element'} +]
|
||||
<!-- end bugidtype selection -->
|
||||
|
||||
</TD>
|
||||
</TR>
|
||||
<tr>
|
||||
<td>
|
||||
Changed in the <NOBR>last <INPUT NAME=changedin SIZE=2 VALUE=""> days.</NOBR>
|
||||
</td>
|
||||
<td align=right>
|
||||
At <NOBR>least <INPUT NAME=votes SIZE=3 VALUE=""> votes.</NOBR>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td rowspan=2 align=right>Where the field(s)
|
||||
</td><td rowspan=2>
|
||||
|
||||
<!-- start chfield selection -->
|
||||
[+ $query_form{'chfield_popup'} +]
|
||||
<!-- end chfield selection -->
|
||||
|
||||
</td>
|
||||
<td rowspan=2>
|
||||
changed.
|
||||
</td>
|
||||
<td>
|
||||
<nobr>dates <INPUT NAME=chfieldfrom SIZE=10 VALUE=""></nobr>
|
||||
<nobr>to <INPUT NAME=chfieldto SIZE=10 VALUE="Now"></nobr>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>changed to value <nobr><INPUT NAME=chfieldvalue SIZE=10> (optional)</nobr>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<P>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<TH ALIGN=LEFT VALIGN=BOTTOM>Program:</th>
|
||||
<TH ALIGN=LEFT VALIGN=BOTTOM>Version:</th>
|
||||
<TH ALIGN=LEFT VALIGN=BOTTOM><A HREF=describecomponents.cgi>Component:</a></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align=left valign=top>
|
||||
|
||||
<!-- start product selection -->
|
||||
[+ $query_form{'product_popup'} +]
|
||||
<!-- end product selection -->
|
||||
|
||||
</td>
|
||||
<td align=left valign=top>
|
||||
|
||||
<!-- start version selection -->
|
||||
[+ $query_form{'version_popup'} +]
|
||||
<!-- end versions selection -->
|
||||
|
||||
</td>
|
||||
<td align=left valign=top>
|
||||
|
||||
<!-- start component selection -->
|
||||
[+ $query_form{'component_popup'} +]
|
||||
<!-- end component selection -->
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table border=0>
|
||||
|
||||
<!-- start summary type selection -->
|
||||
[+ $query_form{'summary_popup'} +]
|
||||
<!-- end summary type selection -->
|
||||
|
||||
<!-- start lonc desc type selection -->
|
||||
[+ $query_form{'description_popup'} +]
|
||||
<!-- end long desc type selection -->
|
||||
|
||||
<!-- start bugfile type selection -->
|
||||
[+ $query_form{'bugfile_popup'} +]
|
||||
<!-- end bugfile type selection -->
|
||||
|
||||
</table>
|
||||
|
||||
<p>
|
||||
<A NAME="chart"> </A>
|
||||
<HR>
|
||||
<TABLE>
|
||||
<TR>
|
||||
<TD>
|
||||
|
||||
<!-- start boolean chart selection -->
|
||||
[+ $query_form{'chart_popup'} +]
|
||||
<!-- end boolean chart selection -->
|
||||
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<HR>
|
||||
|
||||
<!-- start query selection -->
|
||||
[+ $query_form{'query_popup'} +]
|
||||
<!-- end query selection -->
|
||||
|
||||
<NOBR><B>Sort By:</B>
|
||||
|
||||
<!-- start order by selection -->
|
||||
[+ $query_form{'order_popup'} +]
|
||||
<!-- end order by selection -->
|
||||
|
||||
</NOBR>
|
||||
<INPUT TYPE="submit" VALUE="Submit query">
|
||||
<INPUT TYPE="reset" VALUE="Reset back to the default query">
|
||||
|
||||
</FORM>
|
||||
<P>Give me a <A HREF="help.html">clue</A> about how to use this form.
|
||||
<P>
|
||||
|
||||
<!-- start command selection -->
|
||||
[+ $query_form{'admin_menu'} +]
|
||||
<!-- end command selection -->
|
||||
|
||||
<a href=userprefs.cgi>Change your password or preferences.</a><br>
|
||||
<a href="enter_bug.cgi">Create a new bug.</a><br>
|
||||
<a href="createaccount.cgi">Open a new Bugzilla account</a><br>
|
||||
<a href="reports.cgi">Bug reports</a><br>
|
||||
|
||||
|
||||
|
||||
|
||||
322
mozilla/webtools/bugzilla/template/query_redhat.tmpl
Normal file
322
mozilla/webtools/bugzilla/template/query_redhat.tmpl
Normal file
@@ -0,0 +1,322 @@
|
||||
<!-- start javascript -->
|
||||
|
||||
[+ $query_form{'javascript'} +]
|
||||
|
||||
<!-- end javascript -->
|
||||
|
||||
[+
|
||||
if (!defined($::COOKIE{'Bugzilla_login'})) {
|
||||
$OUT = "<CENTER><B>You are currently not logged in. You may want to " .
|
||||
"<A HREF=query.cgi?GoAheadAndLogIn=1>login</A> to use more " .
|
||||
"options such as stored queries or to make changes.</B></CENTER>";
|
||||
}
|
||||
+]
|
||||
|
||||
<FORM METHOD=GET ACTION="buglist.cgi">
|
||||
<TABLE WIDTH=700 BORDER=1 CELLSPACING=0 CELLPADDING=3 ALIGN=center>
|
||||
<TR BGCOLOR="#CFCFCF">
|
||||
<TD ALIGN=left><B>Product Information</B></TD>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
<TABLE CELLSPACING=4 CELLPADDING=0>
|
||||
<TR>
|
||||
<TH ALIGN=left VALIGN=bottom>Program</TH>
|
||||
<TH ALIGN=left VALIGN=bottom>Version</TH>
|
||||
<TH ALIGN=left VALIGN=bottom><A HREF="describecomponents.cgi">Component</A></TH>
|
||||
</TR><TR>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start product selection -->
|
||||
|
||||
[+ $query_form{'product_popup'} +]
|
||||
|
||||
<!-- end product selection -->
|
||||
</TD>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start version selection -->
|
||||
|
||||
[+ $query_form{'version_popup'} +]
|
||||
|
||||
<!-- end version selection -->
|
||||
</TD>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start component selection -->
|
||||
|
||||
[+ $query_form{'component_popup'} +]
|
||||
|
||||
<!-- end component selection -->
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD></TD><TD></TD>
|
||||
<TD ALIGN=left VALIGN=top><INPUT TYPE=checkbox NAME=allexcept VALUE=1 >All Components <B>Except</B> Selected</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE WIDTH=700 BORDER=1 CELLSPACING=0 CELLPADDING=3 ALIGN=center>
|
||||
<TR BGCOLOR="#CFCFCF">
|
||||
<TD ALIGN=left><B>Bug State, Class, and Platform Information</B></TD>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
<TABLE CELLPADDING=0 CELLSPACING=4>
|
||||
<TR>
|
||||
<TH ALIGN=left><A HREF="bug_status.cgi">Status</A></TH>
|
||||
<TH ALIGN=left><A HREF="bug_status.cgi">Resolution</A></TH>
|
||||
<TH ALIGN=left><A HREF="bug_status.cgi#rep_platform">Platform</A></TH>
|
||||
<TH ALIGN=left><A HREF="bug_status.cgi#priority">Priority</A></TH>
|
||||
<TH ALIGN=left><A HREF="bug_status.cgi#severity">Severity</A></TH>
|
||||
[+ $query_form{'targetmilestone_header'} +]
|
||||
</TR><TR>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- begin bugs status selection -->
|
||||
|
||||
[+ $query_form{'status_popup'} +]
|
||||
|
||||
<!-- end bug status selection -->
|
||||
</TD>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start resolution selection -->
|
||||
|
||||
[+ $query_form{'resolution_popup'} +]
|
||||
|
||||
<!-- end resolution selection -->
|
||||
</TD>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start platform selection -->
|
||||
|
||||
[+ $query_form{'platform_popup'} +]
|
||||
|
||||
<!-- end platform selection -->
|
||||
</TD>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start priority selection -->
|
||||
|
||||
[+ $query_form{'priority_popup'} +]
|
||||
|
||||
<!-- end priority selection -->
|
||||
</TD>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start severity selection -->
|
||||
|
||||
[+ $query_form{'severity_popup'} +]
|
||||
|
||||
<!-- end severity selection -->
|
||||
</TD>
|
||||
<TD ALIGN=left VALIGN=top>
|
||||
<!-- start targetmilestone selection -->
|
||||
|
||||
[+ $query_form{'targetmilestone_popup'} +]
|
||||
|
||||
<!-- end targetmilestone selection -->
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE WIDTH=700 BORDER=1 CELLSPACING=0 CELLPADDING=3 ALIGN=center>
|
||||
<TR BGCOLOR="#CFCFCF">
|
||||
<TD ALIGN=left><B>Email Information</B></TD>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
<TABLE>
|
||||
<TR>
|
||||
<TD COLSPAN=2>
|
||||
|
||||
<TABLE BORDER=1 CELLSPACING=0 CELLPADDING=0 ALIGN=center>
|
||||
<TR>
|
||||
<TD>
|
||||
<TABLE CELLSPACING=0 CELLPADDING=0>
|
||||
<TR>
|
||||
<TD ROWSPAN=2 VALIGN=top><A HREF="helpemailquery.cgi">Email:</A>
|
||||
<INPUT NAME="email1" SIZE="35" VALUE="dkl@redhat.com"> matching as
|
||||
<SELECT NAME=emailtype1>
|
||||
|
||||
<OPTION SELECTED VALUE="substring">substring
|
||||
<OPTION VALUE="exact">exact
|
||||
</SELECT>
|
||||
</TD>
|
||||
<TD>
|
||||
<INPUT TYPE="checkbox" NAME="emailassigned_to1" VALUE=1 checked>Assigned To
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD>
|
||||
<INPUT TYPE="checkbox" NAME="emailreporter1" VALUE=1 >Reporter
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=right>(Will match any of the selected fields)</TD>
|
||||
<TD>
|
||||
<INPUT TYPE="checkbox" NAME="emailcc1" VALUE=1 >CC
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TABLE>
|
||||
<p>
|
||||
</TD></TR><TR><TD COLSPAN=2>
|
||||
|
||||
<TABLE BORDER=1 CELLSPACING=0 CELLPADDING=0 ALIGN=center>
|
||||
<TR>
|
||||
<TD>
|
||||
<TABLE CELLSPACING=0 CELLPADDING=0>
|
||||
<TR>
|
||||
<TD ROWSPAN=2 VALIGN=top><A HREF="helpemailquery.cgi">Email:</A>
|
||||
<INPUT NAME="email2" SIZE="35" VALUE=""> matching as
|
||||
<SELECT NAME=emailtype2>
|
||||
|
||||
<OPTION SELECTED VALUE="substring">substring
|
||||
<OPTION VALUE="exact">exact
|
||||
</SELECT>
|
||||
</TD>
|
||||
<TD>
|
||||
<INPUT TYPE="checkbox" NAME="emailassigned_to2" VALUE=1 >Assigned To
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD>
|
||||
<INPUT TYPE="checkbox" NAME="emailreporter2" VALUE=1 checked>Reporter
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD ALIGN=right>(Will match any of the selected fields)</TD>
|
||||
<TD>
|
||||
<INPUT TYPE="checkbox" NAME="emailcc2" VALUE=1 >CC
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TABLE>
|
||||
<p>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE WIDTH=700 BORDER=1 CELLSPACING=0 CELLPADDING=3 ALIGN=center>
|
||||
<TR BGCOLOR="#CFCFCF">
|
||||
<TD ALIGN=left><B>Time Information</B></TD>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
<TABLE>
|
||||
<TR>
|
||||
<TD>
|
||||
Changed in the <NOBR>last <INPUT NAME=changedin SIZE=2 VALUE=""> days.</NOBR>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<TABLE>
|
||||
<TR>
|
||||
<TD ROWSPAN=2 ALIGN=right>Where the field(s)</TD>
|
||||
<TD ROWSPAN=2>
|
||||
|
||||
<!-- start chfield selection -->
|
||||
[+ $query_form{'chfield_popup'} +]
|
||||
<!--end chfield selection -->
|
||||
|
||||
</TD>
|
||||
<TD ROWSPAN=2>changed.</TD>
|
||||
<TD>
|
||||
<NOBR>dates <INPUT NAME=chfieldfrom SIZE=10 VALUE=""></NOBR>
|
||||
<NOBR>to <INPUT NAME=chfieldto SIZE=10 VALUE="Now"></NOBR>
|
||||
</TD>
|
||||
</TR><TR>
|
||||
<TD>changed to value <nobr><INPUT NAME=chfieldvalue SIZE=10> (optional)</NOBR>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE WIDTH=700 BORDER=1 CELLSPACING=0 CELLPADDING=3 ALIGN=center>
|
||||
<TR BGCOLOR="#CFCFCF">
|
||||
<TD ALIGN=left><B>Text Information</B></TD>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
<TABLE BORDER=0>
|
||||
<TR>
|
||||
|
||||
<!-- start short description selection -->
|
||||
[+ $query_form{'summary_element'} +]
|
||||
<!-- end short description selection -->
|
||||
|
||||
</TR><TR>
|
||||
|
||||
<!-- start description selection -->
|
||||
[+ $query_form{'longdesc_element'} +]
|
||||
<!-- end description selection -->
|
||||
|
||||
</TR><TR>
|
||||
|
||||
<!-- start bug file selection -->
|
||||
[+ $query_form{'bugfile_element'} +]
|
||||
<!-- end bug file selection -->
|
||||
|
||||
</TR><TR>
|
||||
|
||||
<!-- start whiteboard selection -->
|
||||
[+ $query_form{'whiteboard_element'} +]
|
||||
<!-- end whiteboard selection -->
|
||||
|
||||
</TABLE>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE WIDTH=700 BORDER=1 CELLSPACING=0 CELLPADDING=3 ALIGN=center>
|
||||
<TR BGCOLOR="#CFCFCF">
|
||||
<TD ALIGN=left><B>Query Actions</B></TD>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
|
||||
<!-- begin query selection -->
|
||||
[+ $query_form{'query_element'} +]
|
||||
<!-- end query selection -->
|
||||
|
||||
<NOBR>Sort By:
|
||||
|
||||
<!-- begin order selection -->
|
||||
[+ $query_form{'order_popup'} +]
|
||||
<!-- end order selection -->
|
||||
|
||||
</NOBR>
|
||||
<INPUT TYPE="submit" VALUE="Submit query">
|
||||
<INPUT TYPE="reset" VALUE="Reset back to the default query">
|
||||
<INPUT TYPE=hidden name=form_name VALUE=query>
|
||||
</FORM>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
|
||||
<P>
|
||||
<TABLE BORDER=1 WIDTH=700 CELLSPACING=0 CELLPADDING=3 ALIGN=center>
|
||||
<TR BGCOLOR="#CFCFCF">
|
||||
<TD ALIGN=left><B>Bugzilla Options</B></TD>
|
||||
</TR><TR BGCOLOR="#ECECEC">
|
||||
<TD ALIGN=left>
|
||||
Give me a <A HREF="help.cgi">clue</A> about how to use this form.<P>
|
||||
|
||||
<!-- start admin menu selection -->
|
||||
[+ $query_form{'admin_menu'} +]
|
||||
<!-- end admin menu selection -->
|
||||
|
||||
<P>
|
||||
|
||||
[+
|
||||
if (defined($::COOKIE{'Bugzilla_login'})) {
|
||||
$OUT = "<a href=relogin.cgi>Log in as someone besides <b>$::COOKIE{'Bugzilla_login'}</b> or log out.</a><br>";
|
||||
$OUT = "<a href=changepassword.cgi>Change your password or preferences.</a><br>";
|
||||
}
|
||||
+]
|
||||
|
||||
<a href="createaccount.cgi">Open a new Bugzilla account</a><br>
|
||||
<a href="reports.cgi">Bug reports</a><br>
|
||||
</TD>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<P>
|
||||
|
||||
Reference in New Issue
Block a user