]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 1539941 - Link keywords and flags in bug detail to searches (and later graphing)
authorKohei Yoshino <kohei.yoshino@gmail.com>
Tue, 2 Apr 2019 19:28:30 +0000 (15:28 -0400)
committerGitHub <noreply@github.com>
Tue, 2 Apr 2019 19:28:30 +0000 (15:28 -0400)
extensions/BugModal/template/en/default/bug_modal/activity_stream.html.tmpl
extensions/BugModal/template/en/default/bug_modal/edit.html.tmpl
extensions/BugModal/template/en/default/bug_modal/tracking_flags.html.tmpl

index 2d32d0652ada68e03b9982fa8a23fe61ab1b298d..fb2391c39e9b22c8a44036d2a1565bdbe91ae488 100644 (file)
           [%+
         ELSIF change.fieldname == 'reporter_accessible';
           "";
+        ELSIF change.fieldname.match('^cf_(status|tracking)_');
+          %]
+          <a href="[% basepath FILTER none %]buglist.cgi?f1=[% change.fieldname FILTER uri %]&amp;o1=isnotempty">
+            [%~ field_descs.${change.fieldname} FILTER html %]</a>:
+          [%+
         ELSE;
           field_descs.${change.fieldname} _ ": " FILTER html;
         END;
           "Not accessible to reporter";
         END;
 
+      CASE 'keywords';
+        FOREACH keyword IN value.split(', ');
+          %]
+            <a href="[% basepath FILTER none %]buglist.cgi?keywords=[% keyword FILTER uri %]&amp;resolution=---">
+              [%~ keyword FILTER html %]</a>[% ", " UNLESS loop.last %]
+          [%+
+        END;
+
       CASE;
         IF change.fieldtype == constants.FIELD_TYPE_DATETIME;
           INCLUDE bug_modal/rel_time.html.tmpl ts=value;
         ELSIF change.buglist;
           value FILTER bug_list_link;
 
+        ELSIF change.fieldname.match('^cf_(status|tracking)_') && value != '---';
+          %]
+          <a href="[% basepath FILTER none %]buglist.cgi?f1=[% change.fieldname FILTER uri %]&amp;o1=equals&amp;v1=
+            [%~ value FILTER uri %]">[% value FILTER html %]</a>
+          [%+
         ELSE;
           value FILTER truncate(256, '…') FILTER html;
 
index 27c50f2a5010f1905fcb2063fd29275ddc219fb4..c218ab5e096105eb1d9bc2e67d6390c67a51e4b0 100644 (file)
         hide_on_view = bug.keyword_objects.size == 0
         help = basepath _ "describekeywords.cgi"
     %]
-      [% bug.keyword_objects.pluck("name").join(", ") || "---" FILTER html %]
+      [% IF bug.keyword_objects.size %]
+        [% FOREACH keyword IN bug.keyword_objects.pluck("name") %]
+          <a href="[% basepath FILTER none %]buglist.cgi?keywords=[% keyword FILTER html %]&amp;resolution=---">
+            [%~ keyword FILTER html %]</a>[% ", " UNLESS loop.last %]
+        [% END %]
+      [% ELSE %]
+        [% "---" FILTER html %]
+      [% END %]
     [% END %]
 
     [% UNLESS cf_hidden_in_product('cf_fx_iteration', bug.product, bug.component, bug) %]
index d6f7d6f8910872cf94367f58a9a8ff1b43c9cfd1..13766be09f9384e64b04b280ba827a525fbafa0c 100644 (file)
         <tr>
           <td class="tracking-flag-name">[% row.name FILTER html %]</td>
           [% IF type == "tracking" %]
-            <td class="tracking-flag-tracking">[% tracking_value FILTER html %]</td>
+            <td class="tracking-flag-tracking">
+              [% IF tracking_value != '---' %]
+                <a href="[% basepath FILTER none %]buglist.cgi?f1=[% row.tracking.name FILTER uri ~%]
+                  &amp;o1=equals&amp;v1=[% tracking_value FILTER uri %]">
+              [% END %]
+              [%~ tracking_value FILTER html ~%]
+              [% '</a>' IF tracking_value != '---' %]
+            </td>
           [% END %]
-          <td class="tracking-flag-status">[% status_value FILTER html %]</td>
+          <td class="tracking-flag-status">
+            [% IF status_value != '---' %]
+              <a href="[% basepath FILTER none %]buglist.cgi?f1=[% row.status.name FILTER uri ~%]
+                &amp;o1=equals&amp;v1=[% status_value FILTER uri %]">
+            [% END %]
+            [%~ status_value FILTER html ~%]
+            [% '</a>' IF status_value != '---' %]
+          </td>
         </tr>
       [% END %]
     </table>