summaryrefslogtreecommitdiffstats
path: root/extensions/BMO/template
diff options
context:
space:
mode:
authorDavid Lawrence <dlawrence@mozilla.com>2013-07-25 08:41:32 +0200
committerByron Jones <bjones@mozilla.com>2013-07-25 08:41:32 +0200
commitb84db39863cd55166bff584265d255a0f882e64a (patch)
tree3420f010a903c858feb715acea0ab9a7ed23e3b8 /extensions/BMO/template
parent40fc1852a1d64e2889f0b532efa38573f41fc0e2 (diff)
downloadbugzilla-b84db39863cd55166bff584265d255a0f882e64a.tar.gz
bugzilla-b84db39863cd55166bff584265d255a0f882e64a.tar.xz
Bug 750742: Create new BMO extension called TrackingFlags to move current tracking flags away from custom fields
Diffstat (limited to 'extensions/BMO/template')
-rw-r--r--extensions/BMO/template/en/default/bug/create/create-winqual.html.tmpl93
-rw-r--r--extensions/BMO/template/en/default/email/bugmail.txt.tmpl9
-rw-r--r--extensions/BMO/template/en/default/hook/bug/edit-after_custom_fields.html.tmpl128
3 files changed, 67 insertions, 163 deletions
diff --git a/extensions/BMO/template/en/default/bug/create/create-winqual.html.tmpl b/extensions/BMO/template/en/default/bug/create/create-winqual.html.tmpl
index d14cca810..fd21ed4ed 100644
--- a/extensions/BMO/template/en/default/bug/create/create-winqual.html.tmpl
+++ b/extensions/BMO/template/en/default/bug/create/create-winqual.html.tmpl
@@ -611,23 +611,25 @@ TUI_hide_default('expert_fields');
<tbody>
[%# non-tracking flags custom fields %]
-[% FOREACH field = Bugzilla.active_custom_fields %]
+[% FOREACH field = Bugzilla.active_custom_fields(product=>product,type=>1) %]
+ [% NEXT IF field.type == constants.FIELD_TYPE_EXTENSION %]
[% NEXT UNLESS field.enter_bug %]
- [% NEXT IF cf_hidden_in_product(field.name, product.name, component.name, 1) %]
[%# crash-signature gets custom handling %]
- [% NEXT IF field.name == 'cf_crash_signature' %]
-
+ [% IF field.name == 'cf_crash_signature' %]
+ [% show_crash_signature = 1 %]
+ [% NEXT %]
+ [% END %]
[% SET value = ${field.name}.defined ? ${field.name} : "" %]
<tr [% 'class="expert_fields"' IF !field.is_mandatory %]>
- [% INCLUDE bug/field.html.tmpl
- bug = default, field = field, value = value, editable = 1,
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = field, value = value, editable = 1,
value_span = 3 %]
</tr>
[% END %]
</tbody>
[%# crash-signature handling %]
-[% UNLESS cf_hidden_in_product('cf_crash_signature', product.name, component.name, 1) %]
+[% IF show_crash_signature %]
<tbody class="expert_fields">
<tr>
<th id="field_label_cf_crash_signature" class="field_label">
@@ -647,23 +649,27 @@ TUI_hide_default('expert_fields');
</tbody>
[% END %]
-[% display_bug_flags = 0 %]
-[% FOREACH field = Bugzilla.active_custom_fields %]
+[% old_tracking_flags = [] %]
+[% old_project_flags = [] %]
+[% FOREACH field = Bugzilla.active_custom_fields(product=>product,type=>2) %]
+ [% NEXT IF field.type == constants.FIELD_TYPE_EXTENSION %]
[% NEXT UNLESS field.enter_bug %]
- [% NEXT IF cf_hidden_in_product(field.name, product.name, component.name, 2) %]
- [% display_bug_flags = 1 %]
- [% LAST %]
+ [% IF cf_is_project_flag(field.name) %]
+ [% old_project_flags.push(field) %]
+ [% ELSE %]
+ [% old_tracking_flags.push(field) %]
+ [% END %]
[% END %]
[% display_flags = 0 %]
[% any_flags_requesteeble = 0 %]
-[% FOREACH flag_type = product.flag_types(is_active=>1).bug %]
+[% FOREACH flag_type = product.flag_types.bug %]
[% display_flags = 1 %]
[% SET any_flags_requesteeble = 1 IF flag_type.is_requestable && flag_type.is_requesteeble %]
[% LAST IF display_flags && any_flags_requesteeable %]
[% END %]
-[% IF display_bug_flags || display_flags %]
+[% IF old_project_flags.size || old_tracking_flags.size || display_flags %]
<tbody class="expert_fields">
<tr>
<th>Flags:</th>
@@ -680,38 +686,63 @@ TUI_hide_default('expert_fields');
<legend>Set [% terms.bug %] flags</legend>
<table cellpadding="0" cellspacing="0">
- <tr>
- [% IF display_bug_flags %]
- <td>
- <table id="bug_tracking_flags">
+ <tr>
+ [% IF old_tracking_flags.size %]
+ <td [% IF project_flags.size %]rowspan="2"[% END %]>
+ <table class="tracking_flags">
<tr>
<th colspan="2" style="text-align:left">Tracking Flags:</th>
</tr>
+ [% FOREACH field = old_tracking_flags %]
+ [% SET value = ${field.name}.defined ? ${field.name} : "" %]
+ <tr>
+ [% INCLUDE bug/field.html.tmpl
+ bug = default
+ field = field
+ value = value
+ editable = 1
+ value_span = 3
+ %]
+ </tr>
+ [% END %]
+ [% Hook.process('tracking_flags_end') %]
+ </table>
+ </td>
+ [% END %]
+ [% IF old_project_flags.size %]
+ <td>
+ <table class="tracking_flags">
<tr>
- [% FOREACH field = Bugzilla.active_custom_fields %]
- [% NEXT UNLESS field.enter_bug %]
- [% NEXT IF cf_hidden_in_product(field.name, product.name, component.name, 2) %]
-
- [% SET value = ${field.name}.defined ? ${field.name} : "" %]
- <tr>
- [% INCLUDE bug/field.html.tmpl
- bug = default, field = field, value = value, editable = 1,
- value_span = 3 %]
- </tr>
- [% END %]
+ <th colspan="2" style="text-align:left">Project Flags:</th>
</tr>
+ [% FOREACH field = old_project_flags %]
+ [% SET value = ${field.name}.defined ? ${field.name} : "" %]
+ <tr>
+ [% INCLUDE bug/field.html.tmpl
+ bug = default
+ field = field
+ value = value
+ editable = 1
+ value_span = 3
+ %]
+ </tr>
+ [% END %]
+ [% Hook.process('project_flags_end') %]
</table>
</td>
+ </tr>
+ <tr>
[% END %]
[% IF display_flags %]
<td>
- [% PROCESS "flag/list.html.tmpl" flag_types = product.flag_types(is_active=>1).bug
+ [% PROCESS "flag/list.html.tmpl" flag_types = product.flag_types.bug
any_flags_requesteeble = any_flags_requesteeble
flag_table_id = "bug_flags"
%]
</td>
[% END %]
- </tr>
+ </tr>
+ [% Hook.process('bug_flags_end') %]
</table>
</fieldset>
</div>
diff --git a/extensions/BMO/template/en/default/email/bugmail.txt.tmpl b/extensions/BMO/template/en/default/email/bugmail.txt.tmpl
index 76fa492ee..771157dd1 100644
--- a/extensions/BMO/template/en/default/email/bugmail.txt.tmpl
+++ b/extensions/BMO/template/en/default/email/bugmail.txt.tmpl
@@ -40,15 +40,16 @@ Configure [% terms.bug %]mail: [% urlbase %]userprefs.cgi?tab=email
Product/Component: [%+ bug.product +%] :: [%+ bug.component %]
[% USE Bugzilla %]
-[% tracking_flags = [] %]
+[% show_tracking_flags = [] %]
[% FOREACH field = Bugzilla.active_custom_fields(product => bug.product_obj, component => bug.component_obj, type => 2) %]
[% NEXT IF cf_flag_disabled(field.name, bug) %]
[% NEXT IF bug.${field.name} == "---" %]
- [% tracking_flags.push(field) %]
+ [% show_tracking_flags.push(field) %]
[% END %]
-[% IF tracking_flags.size %]
+
+[% IF show_tracking_flags.size %]
------- Tracking Flags: -------
-[% FOREACH field = tracking_flags %]
+[% FOREACH field = show_tracking_flags %]
[%+ field.description %]:[% bug.${field.name} %]
[% END %]
[% END %]
diff --git a/extensions/BMO/template/en/default/hook/bug/edit-after_custom_fields.html.tmpl b/extensions/BMO/template/en/default/hook/bug/edit-after_custom_fields.html.tmpl
deleted file mode 100644
index f72267246..000000000
--- a/extensions/BMO/template/en/default/hook/bug/edit-after_custom_fields.html.tmpl
+++ /dev/null
@@ -1,128 +0,0 @@
-[%# ***** BEGIN LICENSE BLOCK *****
- # Version: MPL 1.1
- #
- # 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 BMO Bugzilla Extension;
- #
- # The Initial Developer of the Original Code is the Mozilla Foundation.
- # Portions created by the Initial Developer are Copyright (C) 2011 the
- # Initial Developer. All Rights Reserved.
- #
- # Contributor(s):
- # Byron Jones <glob@mozilla.com>
- #
- # ***** END LICENSE BLOCK *****
- #%]
-
-[% tracking_flags = [] %]
-[% project_flags = [] %]
-[% FOREACH field = Bugzilla.active_custom_fields(product=>bug.product_obj,component=>bug.component_obj,type=>2) %]
- [% NEXT IF NOT user.id AND bug.${field.name} == "---" %]
- [% NEXT IF cf_flag_disabled(field.name, bug) %]
- [% IF cf_is_project_flag(field.name) %]
- [% project_flags.push(field) %]
- [% ELSE %]
- [% tracking_flags.push(field) %]
- [% END %]
-[% END %]
-
-[% IF project_flags.size %]
- <tr>
- <th class="field_label">
- <label>Project Flags:</label>
- </td>
- <td>
- [% IF bug.check_can_change_field('flagtypes.name', 0, 1) %]
- <table id="project-flags">
- [% FOREACH field = project_flags %]
- [% NEXT IF NOT user.id AND field.value == "---" %]
- <tr id="row_[% field.name FILTER js %]">
- <td>&nbsp;</td>
- <td>
- <label for="[% field.name FILTER html %]">
- [% field_descs.${field.name} FILTER html %]:
- </label>
- </td>
- <td>
- [% PROCESS bug/field.html.tmpl value = bug.${field.name}
- editable = user.id
- no_tds = 1 %]
- [% IF user.id %]
- <span id="ro_[% field.name FILTER html %]" class="bz_hidden">
- [% bug.${field.name} FILTER html %]
- </span>
- [% END %]
- </td>
- </tr>
- [% END %]
- </table>
- [% ELSE %]
- [% FOREACH field = project_flags %]
- [% NEXT IF bug.${field.name} == "---" %]
- [% field_descs.${field.name} FILTER html %]: [% bug.${field.name} FILTER html %]<br>
- [% END %]
- [% END %]
- </td>
- </tr>
-[% END %]
-
-[% IF tracking_flags.size %]
- <tr>
- <th class="field_label">
- <label>Tracking Flags:</label>
- </td>
- <td>
- [% IF bug.check_can_change_field('flagtypes.name', 0, 1) %]
- [% IF user.id %]
- <span id="edit_tracking_fields_action">
- (<a onclick="bmo_show_tracking_flags()" href="javascript:void(0)">edit</a>)
- </span>
- [% END %]
- <table id="custom-flags">
- [% FOREACH field = tracking_flags %]
- [% NEXT IF NOT user.id AND field.value == "---" %]
- <tr id="row_[% field.name FILTER js %]">
- <td>&nbsp;</td>
- <td>
- <label for="[% field.name FILTER html %]">
- [% field_descs.${field.name} FILTER html %]:
- </label>
- </td>
- <td>
- [% PROCESS bug/field.html.tmpl value = bug.${field.name}
- editable = user.id
- no_tds = 1 %]
- [% IF user.id %]
- <span id="ro_[% field.name FILTER html %]" class="bz_hidden">
- [% bug.${field.name} FILTER html %]
- </span>
- [% END %]
- </td>
- </tr>
- [% END %]
- </table>
- [% ELSE %]
- [% FOREACH field = tracking_flags %]
- [% NEXT IF bug.${field.name} == "---" %]
- [% field_descs.${field.name} FILTER html %]: [% bug.${field.name} FILTER html %]<br>
- [% END %]
- [% END %]
- </td>
- </tr>
- <script type="text/javascript">
- var bmo_custom_flags = new Array([% tracking_flags.size FILTER none %]);
- [% FOREACH field = tracking_flags %]
- bmo_custom_flags['[% field.name FILTER js %]'] = '[% bug.${field.name} FILTER js %]';
- [% END %]
- bmo_hide_tracking_flags();
- </script>
-[% END %]