diff options
Diffstat (limited to 'template/en/default/bug/field.html.tmpl')
-rw-r--r-- | template/en/default/bug/field.html.tmpl | 111 |
1 files changed, 63 insertions, 48 deletions
diff --git a/template/en/default/bug/field.html.tmpl b/template/en/default/bug/field.html.tmpl index bb678d7..b014a6e 100644 --- a/template/en/default/bug/field.html.tmpl +++ b/template/en/default/bug/field.html.tmpl @@ -18,6 +18,8 @@ # Contributor(s): Myk Melez <myk@mozilla.org> # Max Kanat-Alexander <mkanat@bugzilla.org> # Elliotte Martin <elliotte_martin@yahoo.com> + # Guy Pyrzak <guy.pyrzak@gmail.com> + # Reed Loden <reed@reedloden.com> #%] [%# INTERFACE: @@ -40,35 +42,17 @@ #%] [% SET hidden = 0 %] -[% IF field.visibility_field.defined %] - [% IF !bug.${field.visibility_field.name} - .contains(field.visibility_value.name) - %] - [% SET hidden = 1 %] - [% END %] +[% IF field.visibility_field.defined AND bug + AND !field.visibility_value.is_set_on_bug(bug) +%] + [% SET hidden = 1 %] [% END %] [% IF NOT no_tds %] - <th class="field_label [% ' bz_hidden_field' IF hidden %]" - id="field_label_[% field.name FILTER html %]"> - [% IF editable %] - <label for="[% field.name FILTER html %]"> - [% END %] - [% IF desc_url %] - <a href="[% desc_url FILTER html %]"> - [% ELSIF !field.custom %] - <a href="page.cgi?id=fields.html#[% field.name FILTER url_quote %]"> - [% END -%] - [% field_descs.${field.name} FILTER html %]: - [%- '</a>' IF (!field.custom || desc_url) %] - [% '</label>' IF editable %] - </th> -[% END %] - -[% IF NOT no_tds %] -<td class="field_value [% ' bz_hidden_field' IF hidden %]" - id="field_container_[% field.name FILTER html %]" - [% " colspan=\"$value_span\"" FILTER none IF value_span %]> + [% PROCESS "bug/field-label.html.tmpl" %] + <td class="field_value [% ' bz_hidden_field' IF hidden %]" + id="field_container_[% field.name FILTER html %]" + [% " colspan=\"$value_span\"" FILTER none IF value_span %]> [% END %] [% Hook.process('start_field_column') %] [% IF editable %] @@ -77,11 +61,13 @@ <input id="[% field.name FILTER html %]" class="text_input" name="[% field.name FILTER html %]" value="[% value FILTER html %]" size="40" - maxlength="[% constants.MAX_FREETEXT_LENGTH FILTER none %]"> + maxlength="[% constants.MAX_FREETEXT_LENGTH FILTER none %]" + [% ' aria-required="true"' IF field.is_mandatory %]> [% CASE constants.FIELD_TYPE_DATETIME %] <input name="[% field.name FILTER html %]" size="20" id="[% field.name FILTER html %]" value="[% value FILTER html %]" + [% ' aria-required="true"' IF field.is_mandatory %] onchange="updateCalendarFromField(this)"> <button type="button" class="calendar_button" id="button_calendar_[% field.name FILTER html %]" @@ -89,8 +75,7 @@ <span>Calendar</span> </button> - <div id="con_calendar_[% field.name FILTER html %]" - class="yui-skin-sam"></div> + <div id="con_calendar_[% field.name FILTER html %]"></div> <script type="text/javascript"> createCalendar('[% field.name FILTER js %]') @@ -98,11 +83,13 @@ [% CASE constants.FIELD_TYPE_BUG_ID %] <span id="[% field.name FILTER html %]_input_area"> <input name="[% field.name FILTER html %]" id="[% field.name FILTER html %]" - value="[% value FILTER html %]" size="7"> + value="[% value FILTER html %]" size="7" + [% ' aria-required="true"' IF field.is_mandatory %]> + </span> - [% IF bug.${field.name} %] - [% bug.${field.name} FILTER bug_link(bug.${field.name}) FILTER none %] + [% IF value %] + [% value FILTER bug_link(value, use_alias => 1) FILTER none %] [% END %] <span id="[% field.name FILTER html %]_edit_container" class="edit_me bz_default_hidden"> (<a href="#" id="[% field.name FILTER html %]_edit_action">edit</a>) @@ -112,7 +99,7 @@ '[% field.name FILTER js %]_input_area', '[% field.name FILTER js %]_edit_action', '[% field.name FILTER js %]', - "[% bug.${field.name} FILTER js %]"); + "[% value FILTER js %]"); </script> [% CASE [ constants.FIELD_TYPE_SINGLE_SELECT constants.FIELD_TYPE_MULTI_SELECT ] %] @@ -124,6 +111,7 @@ [% SET field_size = field.legal_values.size %] [% END %] size="[% field_size FILTER html %]" multiple="multiple" + [% ' aria-required="true"' IF field.is_mandatory %] [% END %] > [% IF allow_dont_change %] @@ -138,8 +126,6 @@ [% legal_values = field.legal_values %] [% END %] [% FOREACH legal_value = legal_values %] - [% SET control_value = legal_value.visibility_value %] - [% SET control_field = field.value_field %] <option value="[% legal_value.name FILTER html %]" id="v[% legal_value.id FILTER html %]_ [%- field.name FILTER html %]" @@ -147,10 +133,7 @@ # hidden %] [% IF value.contains(legal_value.name).size %] selected="selected" - [% ELSIF (control_field && control_value - && !bug.${control_field.name}.contains(control_value.name)) - || !legal_value.is_active - %] + [% ELSIF bug AND !legal_value.is_visible_on_bug(bug) %] class="bz_hidden_option" disabled="disabled" [% END %]> [%- display_value(field.name, legal_value.name) FILTER html ~%] @@ -178,38 +161,70 @@ [% CASE constants.FIELD_TYPE_TEXTAREA %] [% INCLUDE global/textarea.html.tmpl id = field.name name = field.name minrows = 4 maxrows = 8 - cols = 60 defaultcontent = value %] + cols = 60 defaultcontent = value mandatory = field.is_mandatory %] [% CASE constants.FIELD_TYPE_BUG_URLS %] [% '<ul class="bug_urls">' IF value.size %] [% FOREACH url = value %] <li> <a href="[% url FILTER html %]">[% url FILTER html %]</a> - [% IF editable %] - <label><input type="checkbox" value="[% url FILTER html %]" - name="remove_[% field.name FILTER html %]"> - Remove</label> - [% END %] + <label><input type="checkbox" value="[% url FILTER html %]" + name="remove_[% field.name FILTER html %]"> + Remove</label> </li> [% END %] [% '</ul>' IF value.size %] - [% IF editable && Param('use_see_also') %] + [% IF Param('use_see_also') %] <label for="[% field.name FILTER html %]"> <strong>Add [% terms.Bug %] URLs:</strong> </label><br> <input type="text" id="[% field.name FILTER html %]" size="40" class="text_input" name="[% field.name FILTER html %]"> [% END %] + [% CASE constants.FIELD_TYPE_KEYWORDS %] + <div id="keyword_container"> + <input type="text" id="[% field.name FILTER html %]" size="40" + class="text_input" name="[% field.name FILTER html %]" + value="[% value FILTER html %]"> + <div id="keyword_autocomplete"></div> + </div> + <script type="text/javascript" defer="defer"> + YAHOO.bugzilla.keyword_array = [ + [%- FOREACH keyword = all_keywords %] + [%-# %]"[% keyword.name FILTER js %]" + [%- "," IF NOT loop.last %][% END %]]; + YAHOO.bugzilla.keywordAutocomplete.init('[% field.name FILTER js %]', + 'keyword_autocomplete'); + </script> [% END %] [% ELSIF field.type == constants.FIELD_TYPE_TEXTAREA %] <div class="uneditable_textarea">[% value FILTER wrap_comment(60) FILTER html %]</div> [% ELSIF field.type == constants.FIELD_TYPE_BUG_ID %] - [% IF bug.${field.name} %] - [% bug.${field.name} FILTER bug_link(bug.${field.name}) FILTER none %] + [% IF value %] + [% value FILTER bug_link(value, use_alias => 1) FILTER none %] [% END %] +[% ELSIF field.type == constants.FIELD_TYPE_BUG_URLS %] + [% '<ul class="bug_urls">' IF value.size %] + [% FOREACH url = value %] + <li><a href="[% url FILTER html %]">[% url FILTER html %]</a></li> + [% END %] + [% '</ul>' IF value.size %] [% ELSE %] [% value.join(', ') FILTER html %] [% END %] [% Hook.process('end_field_column') %] [% '</td>' IF NOT no_tds %] + +[%# for reverse relationships, we show this pseudo-field after the main field %] +[% IF bug.id && field.is_relationship %] + [% extra_field_item = {} %] + [% extra_field_item.header = field.reverse_desc _ ":" FILTER html %] + [% extra_field_item.data = BLOCK %] + [% FOREACH depbug = bug.related_bugs(field) %] + [% depbug.id FILTER bug_link(depbug, use_alias => 1) FILTER none %][% " " %] + [% END %] + [% END %] +[% ELSE %] + [% extra_field_item = '' %] +[% END %] |