summaryrefslogtreecommitdiffstats
path: root/extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl')
-rw-r--r--extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl133
1 files changed, 133 insertions, 0 deletions
diff --git a/extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl b/extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl
new file mode 100644
index 000000000..0e023fcc2
--- /dev/null
+++ b/extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl
@@ -0,0 +1,133 @@
+[%# This Source Code Form is subject to the terms of the Mozilla Public
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ #
+ # This Source Code Form is "Incompatible With Secondary Licenses", as
+ # defined by the Mozilla Public License, v. 2.0.
+ #%]
+
+[% needinfo_flagtype = "" %]
+[% needinfo_flags = [] %]
+
+[% FOREACH type = bug.flag_types %]
+ [% IF type.name == 'needinfo' %]
+ [% needinfo_flagtype = type %]
+ [% FOREACH flag = type.flags %]
+ [% IF flag.status == '?' %]
+ [% needinfo_flags.push(flag) %]
+ [% END %]
+ [% END %]
+ [% LAST IF needinfo_flagtype %]
+ [% END %]
+[% END %]
+
+[% IF needinfo_flagtype %]
+ <div id="needinfo_container">
+ [% IF needinfo_flags.size > 0 %]
+ [%# Displays NEEDINFO tag in bug header %]
+ <script>
+ var summary_container = document.getElementById('static_bug_status');
+ summary_container.appendChild(document.createTextNode('[NEEDINFO]'));
+ </script>
+ [% END %]
+ <table>
+ [% FOREACH flag = needinfo_flags %]
+ <tr>
+ [% IF !flag.requestee || flag.requestee.id == user.id %]
+ <td align="center">
+ <input type="checkbox" id="needinfo_override_[% flag.id FILTER html %]"
+ name="needinfo_override_[% flag.id FILTER html %]" value="1" checked>
+ </td>
+ <td>
+ <label for="needinfo_override_[% flag.id FILTER html %]">
+ Clear the needinfo request for
+ <em>[% IF !flag.requestee %]anyone[% ELSE %][% flag.requestee.login FILTER html %][% END %]</em>.
+ </label>
+ </td>
+ [% ELSE %]
+ <td align="center">
+ <input type="checkbox" id="needinfo_override_[% flag.id FILTER html %]"
+ name="needinfo_override_[% flag.id FILTER html %]" value="1">
+ </td>
+ <td>
+ <label for="needinfo_override_[% flag.id FILTER html %]">
+ I am providing the requested information for <em>[% flag.requestee.login FILTER html %]</em>
+ (clears the needinfo request).
+ </label>
+ </td>
+ [% END %]
+ </tr>
+ [% END %]
+ [% IF needinfo_flags.size == 0 || needinfo_flagtype.is_multiplicable %]
+ <tr>
+ <td align="center">
+ <script>
+ function needinfo_visibility() {
+ var role = YAHOO.util.Dom.get('needinfo_role').value;
+ if (role == 'other') {
+ YAHOO.util.Dom.removeClass('needinfo_from_container', 'bz_default_hidden');
+ YAHOO.util.Dom.get('needinfo_from').disabled = false;
+ YAHOO.util.Dom.get('needinfo_role_identity').innerHTML = '';
+ } else {
+ YAHOO.util.Dom.addClass('needinfo_from_container', 'bz_default_hidden');
+ YAHOO.util.Dom.get('needinfo_from').disabled = true;
+ var identity = '';
+ if (role == 'reporter') {
+ identity = '[% bug.reporter.realname || bug.reporter.login FILTER html FILTER js %]';
+ } else if (role == 'assigned_to') {
+ identity = '[% bug.assigned_to.realname || bug.assigned_to.login FILTER html FILTER js %]';
+ } else if (role == 'qa_contact') {
+ identity = '[% bug.qa_contact.realname || bug.qa_contact.login FILTER html FILTER js %]';
+ }
+ YAHOO.util.Dom.get('needinfo_role_identity').innerHTML = identity;
+ }
+ }
+ function needinfo_focus() {
+ if (YAHOO.util.Dom.get('needinfo').checked
+ && YAHOO.util.Dom.get('needinfo_role').value == 'other')
+ {
+ YAHOO.util.Dom.get('needinfo_from').focus();
+ YAHOO.util.Dom.get('needinfo_from').select();
+ }
+ }
+ function needinfo_role_changed() {
+ YAHOO.util.Dom.get('needinfo').checked = true;
+ needinfo_visibility();
+ needinfo_focus();
+ }
+ function needinfo_other_changed() {
+ YAHOO.util.Dom.get('needinfo').checked = YAHOO.util.Dom.get('needinfo_from').value != '';
+ }
+ YAHOO.util.Event.onDOMReady(needinfo_visibility);
+ </script>
+ <input type="checkbox" name="needinfo" value="1" id="needinfo" onchange="needinfo_focus()">
+ </td>
+ <td>
+ <label for="needinfo">Need more information from</label>
+ <select name="needinfo_role" id="needinfo_role" onchange="needinfo_role_changed()">
+ <option value="other">other</option>
+ <option value="reporter">reporter</option>
+ <option value="assigned_to">assignee</option>
+ [% IF Param('useqacontact') && bug.qa_contact.login != "" %]
+ <option value="qa_contact">qa contact</option>
+ [% END %]
+ <option value="">anyone</option>
+ </select>
+ <span id="needinfo_from_container">
+ [% INCLUDE global/userselect.html.tmpl
+ id => "needinfo_from"
+ name => "needinfo_from"
+ value => ""
+ size => 30
+ multiple => 5
+ onchange => "needinfo_other_changed()"
+ field_title => "Enter one or more comma separated users to request more information from"
+ %]
+ </span>
+ <span id="needinfo_role_identity"></span>
+ </td>
+ </tr>
+ [% END %]
+ </table>
+ </div>
+[% END %]