blob: db02df79b39c5f1c31fd7bb224ae44515f1714c1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
[%# 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 = [] %]
[% can_create_needinfo = 0 %]
[% 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 user.in_group('canconfirm') %]
[% IF bug.status.is_open %]
[% can_create_needinfo = 1 %]
[% ELSE %]
[% FOREACH field = Bugzilla.active_custom_fields(product=>bug.product_obj, component=>bug.component_obj, type=>2) %]
[% IF field.description.match('^status-firefox') && bug.${field.name} == 'affected' %]
[% can_create_needinfo = 1 %]
[% LAST %]
[% END %]
[% END %]
[% 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>
[% FOREACH flag = needinfo_flags %]
[% IF !flag.requestee || flag.requestee.id == user.id %]
Adding a comment will automatically clear needinfo the request for
<em>[% IF !flag.requestee %]anyone[% ELSE %][% flag.requestee.login FILTER html %][% END %]</em>.
[% ELSE %]
<input type="checkbox" id="needinfo_override_[% flag.id FILTER html %]"
name="needinfo_override_[% flag.id FILTER html %]" value="1">
<label for="needinfo_override_[% flag.id FILTER html %]">
I am providing the requested information for <em>[% flag.requestee.login FILTER html %]</em>
(will clear the needinfo request).
</label>
[% END %]
<br>
[% END %]
[% END %]
[% IF can_create_needinfo && (needinfo_flags.size == 0 || needinfo_flagtype.is_multiplicable) %]
<script>
function needinfoRole (select) {
YAHOO.util.Dom.get('needinfo').checked = true;
if (select.value == 'other') {
YAHOO.util.Dom.removeClass('needinfo_from_container', 'bz_default_hidden');
YAHOO.util.Dom.get('needinfo_from').focus();
}
else {
YAHOO.util.Dom.addClass('needinfo_from_container', 'bz_default_hidden');
}
}
</script>
<input type="checkbox" name="needinfo" value="1" id="needinfo">
<label for="needinfo">Need additional information from</label>
<select name="needinfo_role" id="needinfo_role" onchange="needinfoRole(this);">
<option value="">anyone</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="other">other</option>
</select>
<span id="needinfo_from_container" class="bz_default_hidden">
[%+ INCLUDE global/userselect.html.tmpl
id => "needinfo_from"
name => "needinfo_from"
size => 30
value => ""
%]
</span>
<br>
[% END %]
</div>
[% END %]
|