]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 1237185 - hide 'cab review' custom field behind a "click through" to direct peopl...
authorByron Jones <glob@mozilla.com>
Mon, 11 Jan 2016 04:27:18 +0000 (12:27 +0800)
committerByron Jones <glob@mozilla.com>
Mon, 11 Jan 2016 04:27:18 +0000 (12:27 +0800)
extensions/BMO/template/en/default/hook/bug/edit-custom_field.html.tmpl
extensions/BMO/web/js/edit_bug.js
extensions/BugModal/template/en/default/bug_modal/edit.html.tmpl
extensions/BugModal/web/bug_modal.js
scripts/migrate-cab-review.pl

index c11e6ea42d985214dc831c255087a18ac00502e0..d81299004d8dd042d83bb7650cf25aef7f6d9bfb 100644 (file)
     RETURN;
   END;
 %]
+
+[%
+  IF field.name == 'cf_cab_review' AND bug.cf_cab_review == '---';
+    field.hidden = 1;
+    value = '---';
+%]
+  [%# lifted from bug/field.html.tmpl %]
+  <tr>
+    [% PROCESS "bug/field-label.html.tmpl" hidden=0 %]
+    <td class="field_value" id="field_container_[% field.name FILTER html %]" colspan="2">
+      <span id="cab-review-gate">
+        <a href="https://mozilla.service-now.com/change_request.do?sysparm_stack=change_request_list.do&amp;sys_id=-1&amp;sysparm_query=active=true" target="_blank">ServiceNow Change Request</a>
+        (<a href="#" id="cab-review-gate-close">use flag</a>)
+      </span>
+      <span id="cab-review-edit" style="display:none">
+        <input type="hidden" id="[% field.name FILTER html %]_dirty">
+        <select id="[% field.name FILTER html %]" name="[% field.name FILTER html %]">
+          [%
+            FOREACH legal_value = field.legal_values;
+              NEXT IF NOT legal_value.is_active AND NOT value.contains(legal_value.name).size;
+              NEXT UNLESS bug.check_can_change_field(field.name, '---', legal_value.name)
+                OR value.contains(legal_value.name).size;
+              %]
+              <option value="[% legal_value.name FILTER html %]"
+                      id="v[% legal_value.id FILTER html %]_[% field.name FILTER html %]"
+                      [% IF value.contains(legal_value.name).size %]
+                        selected
+                      [% ELSIF bug AND !legal_value.is_visible_on_bug(bug) %]
+                        class="bz_hidden_option" disabled
+                      [% END %]
+              >[% display_value(field.name, legal_value.name) FILTER html %]</option>
+          [%
+            END;
+          %]
+        </select>
+      </span>
+    </td>
+  </tr>
+[%
+    RETURN;
+  END;
+%]
index 87cbbba2135672557c9c89a1d99cdcb87ac72fcf..21c1d1709e4936d173643cd5839f5e9097234973 100644 (file)
@@ -45,3 +45,12 @@ YAHOO.util.Event.onDOMReady(function() {
       new_comment.style.width = comment_width;
   }
 });
+
+$(function() {
+  $('#cab-review-gate-close')
+    .click(function(event) {
+      event.preventDefault();
+      $('#cab-review-gate').hide();
+      $('#cab-review-edit').show();
+    });
+})(jQuery);
index b73761cff5ee09fc47fa12e2b370304a023370c9..c80c09f946831bfeffcac0782125a4c3177395b7 100644 (file)
 
     [% UNLESS cf_hidden_in_product('cf_cab_review', bug.product, bug.component, bug) %]
       [% rendered_custom_fields.push('cf_cab_review') %]
-      [% INCLUDE bug_modal/field.html.tmpl
-          field = bug_fields.cf_cab_review
-          field_type = bug_fields.cf_cab_review.type
-          hide_on_view = bug.cf_cab_review == "---"
-      %]
+      [% IF bug.cf_cab_review == "---" %]
+        [% WRAPPER bug_modal/field.html.tmpl
+            field = bug_fields.cf_cab_review
+            field_type = bug_fields.cf_cab_review.type
+            container = 1
+            hide_on_view = 1
+        %]
+          <span id="cab-review-gate">
+            <a href="https://mozilla.service-now.com/change_request.do?sysparm_stack=change_request_list.do&amp;sys_id=-1&amp;sysparm_query=active=true" target="_blank">ServiceNow Change Request</a>
+            <button id="cab-review-gate-close" type="button" class="minor">Use Flag</button>
+          </span>
+          <span id="cab-review-edit" style="display:none">
+            [% INCLUDE bug_modal/field.html.tmpl
+                field = bug_fields.cf_cab_review
+                field_type = bug_fields.cf_cab_review.type
+                inline = 1
+                no_indent = 1
+            %]
+          </span>
+        [% END %]
+      [% ELSE %]
+        [% INCLUDE bug_modal/field.html.tmpl
+            field = bug_fields.cf_cab_review
+            field_type = bug_fields.cf_cab_review.type
+        %]
+      [% END %]
     [% END %]
 
   [% END %]
index e1ea608a284dcf07bc281058c6501fdd4f3740c8..b2309ffe65a6e3330cbcdd994cc0b9aa7efb0c5a 100644 (file)
@@ -898,6 +898,14 @@ $(function() {
             }
         });
 
+    // cab review 'gate'
+    $('#cab-review-gate-close')
+        .click(function(event) {
+            event.preventDefault();
+            $('#cab-review-gate').hide();
+            $('#cab-review-edit').show();
+        });
+
     // custom textarea fields
     $('.edit-textarea-btn')
         .click(function(event) {
index 2d6a0c209257054d2639143dad0c3adfdbca647e..1c33a2a0fb179388468a3269132655692ac7d4cf 100755 (executable)
@@ -11,7 +11,7 @@ use strict;
 use warnings;
 
 use FindBin qw($RealBin);
-use lib "$RealBin/../../..";
+use lib "$RealBin/..";
 
 use Bugzilla;
 use Bugzilla::Bug;