You are here: Home / Attic / Bugzilla block status

Bugzilla block statusΒΆ

In the search summaries of bugzilla add a (B) to items depending on other unresolved bugs.

--- bugzilla-3.2.3/buglist.cgi	2009-02-05 17:36:18.000000000 +0100
+++ htdocs/buglist.cgi	2009-05-13 11:04:07.000000000 +0200
@@ -676,6 +676,17 @@
     DefineColumn("qa_contact_realname" , "map_qa_contact.realname AS qa_contact_realname"  , "QA Contact");
 }
 DefineColumn("bug_status"        , "bugs.bug_status"            , "Status"           );
+DefineColumn("bug_blocker"        , 
+	"(CASE WHEN ( " .
+	"   select count(blocked) " .
+	"   from dependencies deps, bugs blocked_by " .
+	"   where deps.blocked = bugs.bug_id " .
+	"   and deps.dependson = blocked_by.bug_id " .
+	"   and blocked_by.bug_status in " .
+	"      (select value from bug_status where is_open=1) " .
+	") = 0 " .
+	"THEN 'UNBLOCKED' ELSE 'BLOCKED' END) " .
+	"AS bug_blocker", "bug_blocker");
 DefineColumn("resolution"        , "bugs.resolution"            , "Resolution"       );
 DefineColumn("short_short_desc"  , "bugs.short_desc"            , "Summary"          );
 DefineColumn("short_desc"        , "bugs.short_desc"            , "Summary"          );
@@ -792,7 +803,7 @@
 # Severity, priority, resolution and status are required for buglist
 # CSS classes.
 my @selectcolumns = ("bug_id", "bug_severity", "priority", "bug_status",
-                     "resolution");
+                     "resolution", "bug_blocker");
 
 # if using classification, we also need to look in product.classification_id
 if (Bugzilla->params->{"useclassification"}) {
--- bugzilla-3.2.3/template/en/default/list/table.html.tmpl	2008-04-19 15:14:25.000000000 +0200
+++ htdocs/template/en/default/list/table.html.tmpl	2009-05-06 15:51:11.000000000 +0200
@@ -173,6 +173,9 @@
              [%+ "bz_secure" IF bug.secure_mode -%]
              [%+ "bz_secure_mode_$bug.secure_mode" FILTER css_class_quote IF bug.secure_mode -%]
              [%+ count % 2 == 1 ? "bz_row_odd" : "bz_row_even" -%]
+	[% IF bug.bug_blocker == 'BLOCKED' %]
+	     bz_BLOCKER	
+	[% END %]
              ">
 
     [% IF dotweak %]
@@ -196,6 +199,9 @@
         [% PROCESS formattimeunit time_unit=bug.$column %] 
       [% ELSIF column == 'bug_status' %]
         [%- get_status(bug.$column).truncate(abbrev.$column.maxlength, abbrev.$column.ellipsis) FILTER html %]
+	[% IF bug.bug_blocker == 'BLOCKED' %]
+		(B)
+	[% END %]
       [% ELSIF column == 'resolution' %]
         [%- get_resolution(bug.$column).truncate(abbrev.$column.maxlength, abbrev.$column.ellipsis) FILTER html %]
       [% ELSE %]

Download