diff options
author | Reed Loden <reed@reedloden.com> | 2010-07-05 09:42:01 +0200 |
---|---|---|
committer | Reed Loden <reed@reedloden.com> | 2010-07-05 09:42:01 +0200 |
commit | bf3e63a75b8fbc9d613ec3fd6289a178731692e4 (patch) | |
tree | e2e063f03682f85368cb462d525b35e3114053db /template | |
parent | e598bc84cff9a281d312651332465c3899e3f49d (diff) | |
download | bugzilla-bf3e63a75b8fbc9d613ec3fd6289a178731692e4.tar.gz bugzilla-bf3e63a75b8fbc9d613ec3fd6289a178731692e4.tar.xz |
Bug 455810 - Add autocomplete support to the keywords field
* Special thanks to Guy Pyrzak for the original patch
[r=mkanat a=mkanat]
Diffstat (limited to 'template')
-rw-r--r-- | template/en/default/bug/create/create.html.tmpl | 11 | ||||
-rw-r--r-- | template/en/default/bug/edit.html.tmpl | 9 | ||||
-rw-r--r-- | template/en/default/bug/field.html.tmpl | 27 | ||||
-rw-r--r-- | template/en/default/list/edit-multiple.html.tmpl | 25 | ||||
-rw-r--r-- | template/en/default/search/field.html.tmpl | 35 | ||||
-rw-r--r-- | template/en/default/search/search-advanced.html.tmpl | 2 |
6 files changed, 77 insertions, 32 deletions
diff --git a/template/en/default/bug/create/create.html.tmpl b/template/en/default/bug/create/create.html.tmpl index 0733de02a..fdac893c0 100644 --- a/template/en/default/bug/create/create.html.tmpl +++ b/template/en/default/bug/create/create.html.tmpl @@ -630,14 +630,11 @@ TUI_hide_default('expert_fields'); [% IF user.in_group('editbugs', product.id) %] [% IF use_keywords %] <tr> - [% INCLUDE "bug/field-label.html.tmpl" - field = bug_fields.keywords editable = 1 - desc_url = "describekeywords.cgi" + [% INCLUDE bug/field.html.tmpl + bug = default, field = bug_fields.keywords, editable = 1, + value = keywords, desc_url = "describekeywords.cgi", + value_span = 2 %] - <td colspan="3"> - <input id="keywords" name="keywords" size="40" - value="[% keywords FILTER html %]"> (optional) - </td> </tr> [% END %] diff --git a/template/en/default/bug/edit.html.tmpl b/template/en/default/bug/edit.html.tmpl index 0ef3cba8f..5520e7699 100644 --- a/template/en/default/bug/edit.html.tmpl +++ b/template/en/default/bug/edit.html.tmpl @@ -591,8 +591,13 @@ <label for="keywords" accesskey="k"> <b><a href="describekeywords.cgi"><u>K</u>eywords</a></b></label>: </td> - [% PROCESS input inputname => "keywords" size => 40 colspan => 2 - value => bug.keywords.join(', ') %] + <td class="field_value" colspan="2"> + [% INCLUDE bug/field.html.tmpl + bug = bug, field = bug_fields.keywords, value = bug.keywords + editable = bug.check_can_change_field("keywords", 0, 1), + no_tds = 1 + %] + </td> </tr> [% END %] [% END %] diff --git a/template/en/default/bug/field.html.tmpl b/template/en/default/bug/field.html.tmpl index 97d38661c..2417ce39b 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: @@ -165,22 +167,35 @@ [% 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) diff --git a/template/en/default/list/edit-multiple.html.tmpl b/template/en/default/list/edit-multiple.html.tmpl index 619afe8dd..87eb0c7d4 100644 --- a/template/en/default/list/edit-multiple.html.tmpl +++ b/template/en/default/list/edit-multiple.html.tmpl @@ -19,6 +19,7 @@ # Max Kanat-Alexander <mkanat@bugzilla.org> # Frédéric Buclin <LpSolit@gmail.com> # Guy Pyrzak <guy.pyrzak@gmail.com> + # Reed Loden <reed@reedloden.com> #%] [% PROCESS global/variables.none.tmpl %] @@ -173,7 +174,7 @@ id => "assigned_to" name => "assigned_to" value => dontchange - size => 32 + size => 40 %] <input type="checkbox" id="set_default_assignee" name="set_default_assignee" value="1"> <label for="set_default_assignee">Reset Assignee to default</label> @@ -188,7 +189,7 @@ id => "qa_contact" name => "qa_contact" value => dontchange - size => 32 + size => 40 %] <input type="checkbox" id="set_default_qa_contact" name="set_default_qa_contact" value="1"> <label for="set_default_qa_contact">Reset QA Contact to default</label> @@ -200,7 +201,7 @@ <th><label for="masscc">CC List:</label></th> <td colspan="3"> - <input id="masscc" name="masscc" size="32"> + <input id="masscc" name="masscc" size="40"> <select name="ccaction"> <option value="add">Add these to the CC List</option> <option value="remove">Remove these from the CC List</option> @@ -212,13 +213,15 @@ [% IF use_keywords %] <tr> - <th> - <label for="keywords"> - <a href="describekeywords.cgi">Keywords</a>: - </label> - </th> + [% INCLUDE "bug/field-label.html.tmpl" + field = bug_fields.keywords, editable = 1 + desc_url = "describekeywords.cgi" + %] <td colspan="3"> - <input id="keywords" name="keywords" size="32"> + [% INCLUDE bug/field.html.tmpl + field = bug_fields.keywords, editable = 1, value = keywords + no_tds = 1 + %] <select name="keywordaction"> <option value="add">Add these keywords</option> <option value="delete">Delete these keywords</option> @@ -236,7 +239,7 @@ </label> </th> <td colspan="3"> - <input id="dependson" name="dependson" size="32"> + <input id="dependson" name="dependson" size="40"> <select name="dependson_action"> <option value="add">Add these IDs</option> <option value="remove">Delete these IDs</option> @@ -251,7 +254,7 @@ </label> </th> <td colspan="3"> - <input id="blocked" name="blocked" size="32"> + <input id="blocked" name="blocked" size="40"> <select name="blocked_action"> <option value="add">Add these IDs</option> <option value="remove">Delete these IDs</option> diff --git a/template/en/default/search/field.html.tmpl b/template/en/default/search/field.html.tmpl index 50a2f0c06..d4a1a30b7 100644 --- a/template/en/default/search/field.html.tmpl +++ b/template/en/default/search/field.html.tmpl @@ -15,6 +15,7 @@ # Initial Developer. All Rights Reserved. # # Contributor(s): Guy Pyrzak <guy.pyrzak@gmail.com> + # Reed Loden <reed@reedloden.com> # #%] [%# INTERFACE: @@ -35,16 +36,41 @@ tag_name = "span" editable = 1 %] - [% INCLUDE "search/type-select.html.tmpl" name = field.name _ "_type", types = types, - selected = type_selected %] - + selected = type_selected + %] <input name="[% field.name FILTER html %]" id="[% field.name FILTER html %]" size="40" [% IF onchange %] onchange="[% onchange FILTER html %]"[% END %] value="[% value FILTER html %]"> + [% CASE constants.FIELD_TYPE_KEYWORDS %] + [% INCLUDE "bug/field-label.html.tmpl" + field = field + tag_name = "span" + editable = 1 + %] + [% INCLUDE "search/type-select.html.tmpl" + name = field.name _ "_type", + types = types, + selected = type_selected + %] + <div id="keyword_container"> + <input name="[% field.name FILTER html %]" + id="[% field.name FILTER html %]" size="40" + [% IF onchange %] onchange="[% onchange FILTER html %]"[% END %] + 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> [% CASE constants.FIELD_TYPE_DATETIME %] [% INCLUDE "bug/field-label.html.tmpl" field = field @@ -113,5 +139,4 @@ [% END %] </select> </div> - [% END %] -
\ No newline at end of file + [% END %] diff --git a/template/en/default/search/search-advanced.html.tmpl b/template/en/default/search/search-advanced.html.tmpl index 1e0cc9251..fa9819c35 100644 --- a/template/en/default/search/search-advanced.html.tmpl +++ b/template/en/default/search/search-advanced.html.tmpl @@ -38,7 +38,7 @@ var queryform = "queryform" title = "Search for $terms.bugs" onload = "doOnSelectProduct(0); enableHelp();" javascript = js_data - yui = [ 'calendar' ] + yui = [ 'autocomplete', 'calendar' ] javascript_urls = [ "js/productform.js", "js/util.js", "js/help.js" , "js/TUI.js", "js/field.js"] style_urls = [ "skins/standard/help.css" , "skins/standard/search_form.css" ] |