1[%# This Source Code Form is subject to the terms of the Mozilla Public
2  # License, v. 2.0. If a copy of the MPL was not distributed with this
3  # file, You can obtain one at http://mozilla.org/MPL/2.0/.
4  #
5  # This Source Code Form is "Incompatible With Secondary Licenses", as
6  # defined by the Mozilla Public License, v. 2.0.
7  #%]
8
9[%# INTERFACE:
10  # field: Bugzila::Field; the current field being edited
11  #%]
12
13[% PROCESS "global/field-descs.none.tmpl" %]
14
15[% title = BLOCK %]
16  カスタムフィールド '[% field.name FILTER html %]' ([% field.description FILTER html %]) の編集
17[% END %]
18
19[% javascript = BLOCK %]
20  [% INCLUDE "admin/custom_fields/cf-js.js.tmpl" %]
21[% END %]
22
23[% PROCESS global/header.html.tmpl
24           title = title
25           onload = "toggleCheckbox(document.getElementById('enter_bug'), 'new_bugmail');"
26           javascript_urls = [ 'js/util.js' ]
27           doc_section = "custom-fields.html#edit-custom-fields"
28           style_urls = ['skins/standard/admin.css']
29%]
30
31<p>
32  説明はフィールドを説明する非常に短いテキストで、
33  ユーザインターフェースでこのフィールドのラベルに利用されます。
34</p>
35
36<form id="edit_field" action="editfields.cgi" method="GET">
37  <table border="0" cellspacing="0" cellpadding="5" id="edit_custom_field">
38    <tr>
39      <th class="narrow_label">名前:</th>
40      <td>[% field.name FILTER html %]</td>
41
42      <th>
43        <label for="enter_bug">[% terms.bug %] 作成時に設定可能:</label>
44      </th>
45      <td><input type="checkbox" id="enter_bug" name="enter_bug" value="1"
46                 [%- " checked" IF field.enter_bug %]
47                 onchange="toggleCheckbox(this, 'new_bugmail');"></td>
48    </tr>
49    <tr>
50      <th class="narrow_label"><label for="desc">説明:</label></th>
51      <td><input type="text" id="desc" name="desc" size="40"
52                 value="[% field.description FILTER html %]"></td>
53
54      <th>
55        <label for="new_bugmail">[% terms.bugs %] 作成時に [% terms.bug %] メールに表示:</label>
56      </th>
57      <td><input type="checkbox" id="new_bugmail" name="new_bugmail" value="1"
58                 [%- " checked" IF field.mailhead %]></td>
59    </tr>
60    <tr>
61      <th class="narrow_label">Type:</th>
62      <td>[% field_types.${field.type} FILTER html %]</td>
63
64      <th><label for="obsolete">用済み:</label></th>
65      <td><input type="checkbox" id="obsolete" name="obsolete" value="1"
66                 [%- " checked" IF field.obsolete %]></td>
67    </tr>
68    <tr>
69      <th class="narrow_label"><label for="sortkey">ソート順:</label></th>
70      <td>
71        <input type="text" id="sortkey" name="sortkey" size="6" maxlength="6"
72               value="[% field.sortkey FILTER html %]">
73      </td>
74      <th align="right"><label for="is_mandatory">委任済:</label></th>
75      <td><input type="checkbox" id="is_mandatory" name="is_mandatory" value="1"
76                 [%- ' checked="checked"' IF field.is_mandatory %]></td>
77    </tr>
78    <tr>
79      <th class="narrow_label">説明:</th>
80      <td>
81        [% INCLUDE global/textarea.html.tmpl
82         name           = 'long_desc'
83         id             = 'long_desc'
84         minrows        = 3
85         maxrows        = 5
86         cols           = 46
87         defaultcontent = field.long_desc
88       %]
89      </td>
90      <th>
91        <label for="visibility_field_id">次の条件でのみ表示:</label>
92      </th>
93      <td>
94        <select name="visibility_field_id" id="visibility_field_id"
95                onchange="onChangeVisibilityField()">
96          <option></option>
97          [% FOREACH sel_field = Bugzilla.fields({ is_select => 1 }) %]
98            [% NEXT IF sel_field.id == field.id %]
99            <option value="[% sel_field.id FILTER html %]"
100             [% ' selected="selected"'
101                IF sel_field.id == field.visibility_field.id %]>
102              [% sel_field.description FILTER html %]
103              ([% sel_field.name FILTER html %])
104            </option>
105          [% END %]
106        </select>
107        <label for="visibility_values">
108          <strong>が次の状態の時:</strong>
109        </label>
110        <select multiple="multiple" size="5" name="visibility_values"
111                id="visibility_values" class="field_value">
112          [% FOREACH value = field.visibility_field.legal_values %]
113            <option value="[% value.id FILTER html %]"
114             [% ' selected="selected"'
115                IF field.visibility_value.id == value.id %]>
116              [% IF field.visibility_field.name == 'component' %]
117                [% display_value('product', value.product.name) FILTER html %]:
118              [% END %]
119              [%+ display_value(field.visibility_field.name, value.name) FILTER html %]
120            </option>
121          [% END %]
122        </select>
123      </td>
124    </tr>
125    [% IF field.type == constants.FIELD_TYPE_BUG_ID %]
126      <th class="narrow_label">
127        <label for="reverse_desc">逆向きの関係性:</label>
128      </th>
129      <td>
130        <input type="text" id="reverse_desc" name="reverse_desc" size="40"
131               value="[% field.reverse_desc FILTER html %]">
132        <br/>
133        このラベルは、この
134        [%+ field_types.${constants.FIELD_TYPE_BUG_ID} FILTER html %]
135        フィールドを持つような [% terms.bugs %]
136        のリストに対するラベルとして利用できます。
137        たとえば、説明が"の重複"であるような場合に、逆向きの説明は
138        "この [% terms.bug %] への重複" となります。
139        このフィールドへのリストを無効化する場合は空白にしてください。
140      </td>
141    [% ELSE %]
142      <td colspan="2">&nbsp;</td>
143    [% END %]
144    [% IF field.is_select %]
145      <tr>
146        <th>&nbsp;</th>
147        <td>
148          <a href="editvalues.cgi?field=[% field.name FILTER uri %]">このフィールドの値を編集</a>.
149        </td>
150
151        <th>
152          <label for="value_field_id">
153            このフィールドの値によって<br>
154            制御されるフィールド:
155          </label>
156        </th>
157
158        <td>
159          <select name="value_field_id" id="value_field_id">
160            <option></option>
161            [% FOREACH sel_field = Bugzilla.fields({ is_select => 1 }) %]
162              [% NEXT IF sel_field.id == field.id %]
163              <option value="[% sel_field.id FILTER html %]"
164               [% ' selected="selected"'
165                  IF sel_field.id == field.value_field.id %]>
166                [% sel_field.description FILTER html %]
167                ([% sel_field.name FILTER html %])
168              </option>
169            [% END %]
170          </select>
171        </td>
172      </tr>
173    [% END %]
174  </table>
175  <br>
176  <input type="hidden" name="action" value="update">
177  <input type="hidden" name="name" value="[% field.name FILTER html %]">
178  <input type="hidden" name="token" value="[% token FILTER html %]">
179  <input type="submit" id="edit" value="更新">
180</form>
181
182[% IF field.obsolete %]
183<p>
184  <a href="editfields.cgi?action=del&amp;name=[% field.name FILTER html %]">このカスタムフィールドをデータベースから削除する。</a><br>
185  この操作が可能なのは、フィールドが "用済み" となっているか、
186  [% terms.abug FILTER html %] で利用されていない場合のみです。<br>
187</p>
188[% END %]
189
190<p>
191  <a href="editfields.cgi">カスタムフィールドの一覧に戻る</a>
192</p>
193
194[% PROCESS global/footer.html.tmpl %]
195