Commit 6c0edaa7 authored by Frédéric Buclin's avatar Frédéric Buclin

Bug 463134: Remove "Show every bug in the system with dependencies" in dependency graphs

r/a=mkanat
parent eeffc2b5
...@@ -96,6 +96,8 @@ sub AddLink { ...@@ -96,6 +96,8 @@ sub AddLink {
} }
} }
ThrowCodeError("missing_bug_id") if !defined $cgi->param('id');
# The list of valid directions. Some are not proposed in the dropdrown # The list of valid directions. Some are not proposed in the dropdrown
# menu despite the fact that they are valid. # menu despite the fact that they are valid.
my @valid_rankdirs = ('LR', 'RL', 'TB', 'BT'); my @valid_rankdirs = ('LR', 'RL', 'TB', 'BT');
...@@ -109,10 +111,6 @@ if (!grep { $_ eq $rankdir } @valid_rankdirs) { ...@@ -109,10 +111,6 @@ if (!grep { $_ eq $rankdir } @valid_rankdirs) {
my $display = $cgi->param('display') || 'tree'; my $display = $cgi->param('display') || 'tree';
my $webdotdir = bz_locations()->{'webdotdir'}; my $webdotdir = bz_locations()->{'webdotdir'};
if (!defined $cgi->param('id') && $display ne 'doall') {
ThrowCodeError("missing_bug_id");
}
my ($fh, $filename) = File::Temp::tempfile("XXXXXXXXXX", my ($fh, $filename) = File::Temp::tempfile("XXXXXXXXXX",
SUFFIX => '.dot', SUFFIX => '.dot',
DIR => $webdotdir, DIR => $webdotdir,
...@@ -132,23 +130,14 @@ node [URL="${urlbase}show_bug.cgi?id=\\N", style=filled, color=lightgrey] ...@@ -132,23 +130,14 @@ node [URL="${urlbase}show_bug.cgi?id=\\N", style=filled, color=lightgrey]
my %baselist; my %baselist;
if ($display eq 'doall') { foreach my $i (split('[\s,]+', $cgi->param('id'))) {
my $dependencies = $dbh->selectall_arrayref(
"SELECT blocked, dependson FROM dependencies");
foreach my $dependency (@$dependencies) {
my ($blocked, $dependson) = @$dependency;
AddLink($blocked, $dependson, $fh);
}
} else {
foreach my $i (split('[\s,]+', $cgi->param('id'))) {
my $bug = Bugzilla::Bug->check($i); my $bug = Bugzilla::Bug->check($i);
$baselist{$bug->id} = 1; $baselist{$bug->id} = 1;
} }
my @stack = keys(%baselist); my @stack = keys(%baselist);
if ($display eq 'web') { if ($display eq 'web') {
my $sth = $dbh->prepare(q{SELECT blocked, dependson my $sth = $dbh->prepare(q{SELECT blocked, dependson
FROM dependencies FROM dependencies
WHERE blocked = ? OR dependson = ?}); WHERE blocked = ? OR dependson = ?});
...@@ -166,9 +155,9 @@ if ($display eq 'doall') { ...@@ -166,9 +155,9 @@ if ($display eq 'doall') {
AddLink($blocked, $dependson, $fh); AddLink($blocked, $dependson, $fh);
} }
} }
} }
# This is the default: a tree instead of a spider web. # This is the default: a tree instead of a spider web.
else { else {
my @blocker_stack = @stack; my @blocker_stack = @stack;
foreach my $id (@blocker_stack) { foreach my $id (@blocker_stack) {
my $blocker_ids = Bugzilla::Bug::EmitDependList('blocked', 'dependson', $id); my $blocker_ids = Bugzilla::Bug::EmitDependList('blocked', 'dependson', $id);
...@@ -185,11 +174,10 @@ if ($display eq 'doall') { ...@@ -185,11 +174,10 @@ if ($display eq 'doall') {
AddLink($dep_bug_id, $id, $fh); AddLink($dep_bug_id, $id, $fh);
} }
} }
} }
foreach my $k (keys(%baselist)) { foreach my $k (keys(%baselist)) {
$seen{$k} = 1; $seen{$k} = 1;
}
} }
my $sth = $dbh->prepare( my $sth = $dbh->prepare(
......
...@@ -21,7 +21,6 @@ ...@@ -21,7 +21,6 @@
[%# INTERFACE: [%# INTERFACE:
# bug_id: integer. The number of the bug(s). # bug_id: integer. The number of the bug(s).
# multiple_bugs: boolean. True if bug_id contains > 1 bug number. # multiple_bugs: boolean. True if bug_id contains > 1 bug number.
# doall: boolean. True if we are displaying every bug in the database.
# showsummary: boolean. True if we are showing bug summaries. # showsummary: boolean. True if we are showing bug summaries.
# rankdir: string. "TB" if we are ranking top-to-bottom, # rankdir: string. "TB" if we are ranking top-to-bottom,
"LR" if left-to-right. "LR" if left-to-right.
...@@ -37,7 +36,7 @@ ...@@ -37,7 +36,7 @@
header = title header = title
%] %]
[% IF NOT multiple_bugs AND NOT doall %] [% IF NOT multiple_bugs %]
[% filtered_desc = short_desc FILTER html %] [% filtered_desc = short_desc FILTER html %]
[% title = "$title for $terms.bug $bug_id" [% title = "$title for $terms.bug $bug_id"
header = "$header for $terms.bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>" header = "$header for $terms.bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
...@@ -82,8 +81,6 @@ ...@@ -82,8 +81,6 @@
Restrict to [% terms.bugs %] having a direct relationship with entered [% terms.bugs %]</option> Restrict to [% terms.bugs %] having a direct relationship with entered [% terms.bugs %]</option>
<option value="web" [% 'selected="selected"' IF display == "web" %]> <option value="web" [% 'selected="selected"' IF display == "web" %]>
Show all [% terms.bugs %] having any relationship with entered [% terms.bugs %]</option> Show all [% terms.bugs %] having any relationship with entered [% terms.bugs %]</option>
<option value="doall" [% 'selected="selected"' IF display == "doall" %]>
Show every [% terms.bug %] in the system with dependencies</option>
</select> </select>
</td> </td>
</tr> </tr>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment