blob: 91808fbae15975ffa6778c7dcb2adee9f5d59d8b [file] [log] [blame]
[%# 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.
#%]
[%# INTERFACE:
# showbugcounts: if defined, then bug counts should be included in the table
# product: object; Bugzilla::Product object representing the product to
# which the component belongs.
#%]
[% title = BLOCK %]Select component of product
'[% product.name FILTER html %]'[% END %]
[% PROCESS global/header.html.tmpl
title = title
style_urls = ['skins/standard/admin.css']
%]
[% edit_contentlink = BLOCK %]editcomponents.cgi?action=edit&product=
[%- product.name FILTER uri %]&component=%%name%%[% END %]
[% delete_contentlink = BLOCK %]editcomponents.cgi?action=del&product=
[%- product.name FILTER uri %]&component=%%name%%[% END %]
[% bug_count_contentlink = BLOCK %]buglist.cgi?component=%%name%%&product=
[%- product.name FILTER uri %][% END %]
[% columns = [
{
name => "name"
heading => "Edit component..."
contentlink => edit_contentlink
},
{
name => "description"
heading => "Description"
allow_html_content => 1
},
{
name => "initialowner"
heading => "Default Assignee"
},
]
%]
[% IF Param('useqacontact') %]
[% columns.push({
name => 'initialqacontact'
heading => 'Default QA Contact'
}) %]
[% END %]
[% columns.push({
name => "initial_cc_names"
heading => "Default CC list"
},
{
name => "isactive"
heading => "Active"
yesno_field => 1
}) %]
[% IF showbugcounts %]
[% columns.push({
name => 'bug_count'
heading => "$terms.Bugs"
class => "right"
contentlink => bug_count_contentlink
}) %]
[% END %]
[% columns.push({
heading => "Action"
content => "Delete"
contentlink => delete_contentlink
}) %]
[%# Overrides the initialowner, the initialqacontact, and the initial_cc_names with right values %]
[% overrides.initialowner = {} %]
[% overrides.initialqacontact = {} %]
[% overrides.initial_cc_names = {} %]
[%# "component" is a reserved word in Template Toolkit. %]
[% FOREACH my_component = product.components %]
[% overrides.initialowner.name.${my_component.name} = {
override_content => 1
content => my_component.default_assignee.login
}
%]
[% overrides.initialqacontact.name.${my_component.name} = {
override_content => 1
content => my_component.default_qa_contact.login
}
%]
[% SET initial_cc_list = [] %]
[% FOREACH cc_user = my_component.initial_cc %]
[% initial_cc_list.push(cc_user.login) %]
[% END %]
[% overrides.initial_cc_names.name.${my_component.name} = {
override_content => 1
content => initial_cc_list.join(', ')
}
%]
[% END %]
[% Hook.process('before_table') %]
[% PROCESS admin/table.html.tmpl
columns = columns
data = product.components
overrides = overrides
%]
<p><a href="editcomponents.cgi?action=add&amp;product=[% product.name FILTER uri %]">Add</a>
a new component to product '[% product.name FILTER html %]'</p>
[% IF ! showbugcounts %]
<p><a href="editcomponents.cgi?product=[% product.name FILTER uri %]&amp;showbugcounts=1">
Redisplay table with [% terms.bug %] counts (slower)</a></p>
[% END %]
[% PROCESS admin/components/footer.html.tmpl
no_edit_other_components_link = 1
%]
[% PROCESS global/footer.html.tmpl %]