summaryrefslogtreecommitdiffstats
path: root/template
diff options
context:
space:
mode:
authorgerv%gerv.net <>2002-07-25 05:25:08 +0200
committergerv%gerv.net <>2002-07-25 05:25:08 +0200
commit99ffb603249f091e595784c984ecce499d22af40 (patch)
treeb8b4130a5c7d0de171318f2c983f81f1adcaa8e4 /template
parente6b98f8f8a038552155964848d1bc028a9ffdcaf (diff)
downloadbugzilla-99ffb603249f091e595784c984ecce499d22af40.tar.gz
bugzilla-99ffb603249f091e595784c984ecce499d22af40.tar.xz
bug 159200 - support accesskey in search page. Patch by gerv; 2xr=timeless.
Diffstat (limited to 'template')
-rw-r--r--template/en/default/search/form.html.tmpl133
1 files changed, 85 insertions, 48 deletions
diff --git a/template/en/default/search/form.html.tmpl b/template/en/default/search/form.html.tmpl
index 7bab96cb6..2a544ba2e 100644
--- a/template/en/default/search/form.html.tmpl
+++ b/template/en/default/search/form.html.tmpl
@@ -331,7 +331,7 @@ function selectProduct(f) {
<table>
<tr>
- <th align="right">Summary:</th>
+ <th align="right"><u>S</u>ummary:</th>
<td>
<select name="short_desc_type">
[% FOREACH qv = query_variants %]
@@ -341,7 +341,8 @@ function selectProduct(f) {
</select>
</td>
<td>
- <input name="short_desc" size="40" value="[% default.short_desc.0 FILTER html %]">
+ <input name="short_desc" size="40" accesskey="s"
+ value="[% default.short_desc.0 FILTER html %]">
</td>
<td>
<input type="submit" value="[% button_name %]">
@@ -354,12 +355,14 @@ function selectProduct(f) {
<td colspan="4">
<table>
<tr valign="bottom">
- <th align="left">Product:</th>
- <th align="left"><a href="describecomponents.cgi">Component</a>:</th>
- <th align="left">Version:</th>
+ <th align="left"><u>P</u>roduct:</th>
+ <th align="left">
+ <a href="describecomponents.cgi">Co<u>m</u>ponent</a>:
+ </th>
+ <th align="left"><u>V</u>ersion:</th>
[% IF (Param("usetargetmilestone")) %]
- <th align="left">Target:</th>
+ <th align="left"><u>T</u>arget:</th>
[% END %]
</tr>
@@ -368,29 +371,39 @@ function selectProduct(f) {
[%# Can't use the select block here because of onChange and the fact that
'component' is a toolkit reserved word - we use 'component_' instead. %]
<td align="left">
- <select name="product" multiple="multiple" size="5" onchange="selectProduct(this.form);">
- [% FOREACH p = product %]
- <option value="[% p FILTER html %]"
- [% " selected" IF lsearch(default.product, p) != -1 %]>
- [% p FILTER html %]</option>
- [% END %]
- </select>
+ <label for="product" accesskey="p">
+ <select name="product" multiple="multiple" size="5" id="product"
+ onchange="selectProduct(this.form);">
+ [% FOREACH p = product %]
+ <option value="[% p FILTER html %]"
+ [% " selected" IF lsearch(default.product, p) != -1 %]>
+ [% p FILTER html %]</option>
+ [% END %]
+ </select>
+ </label>
</td>
<td align="left">
- <select name="component" multiple="multiple" size="5">
- [% FOREACH c = component_ %]
- <option value="[% c FILTER html %]"
- [% " selected" IF lsearch(default.component, c) != -1 %]>
- [% c FILTER html %]</option>
- [% END %]
- </select>
+ <label for="component" accesskey="m">
+ <select name="component" id="component"
+ multiple="multiple" size="5">
+ [% FOREACH c = component_ %]
+ <option value="[% c FILTER html %]"
+ [% " selected" IF lsearch(default.component, c) != -1 %]>
+ [% c FILTER html %]</option>
+ [% END %]
+ </select>
+ </label>
</td>
- [% PROCESS select sel = { name => 'version', size => 5 } %]
+ [% PROCESS select sel = { name => 'version',
+ size => 5,
+ accesskey => 'v' } %]
[% IF Param('usetargetmilestone') && target_milestone.size > 0 %]
- [% PROCESS select sel = { name => 'target_milestone', size => 5 } %]
+ [% PROCESS select sel = { name => 'target_milestone',
+ size => 5,
+ accesskey => 't' } %]
[% END %]
</tr>
</table>
@@ -400,9 +413,12 @@ function selectProduct(f) {
[%# *** Comment URL Whiteboard Keywords *** %]
[% FOREACH field = [
- { name => "long_desc", description => "A&nbsp;comment" },
- { name => "bug_file_loc", description => "The&nbsp;URL" },
- { name => "status_whiteboard", description => "Whiteboard" } ] %]
+ { name => "long_desc", description => "A&nbsp;<u>C</u>omment",
+ accesskey => 'c' },
+ { name => "bug_file_loc", description => "The&nbsp;<u>U</u>RL",
+ accesskey => 'u' },
+ { name => "status_whiteboard", description => "<u>W</u>hiteboard",
+ accesskey => 'w' } ] %]
[% UNLESS field.name == 'status_whiteboard' AND NOT Param('usestatuswhiteboard') %]
<tr>
@@ -416,8 +432,9 @@ function selectProduct(f) {
[% END %]
</select>
</td>
- <td><input name="[% field.name %]" size="40" value="
- [% default.${field.name}.0 FILTER html %]">
+ <td><input name="[% field.name %]" size="40"
+ accesskey="[% field.accesskey %]"
+ value="[% default.${field.name}.0 FILTER html %]">
</td>
<td></td>
</tr>
@@ -426,7 +443,9 @@ function selectProduct(f) {
[% IF have_keywords %]
<tr>
- <th align="right"><a href="describekeywords.cgi">Keywords</a>:</th>
+ <th align="right">
+ <a href="describekeywords.cgi"><u>K</u>eywords</a>:
+ </th>
<td>
<select name="keywords_type">
[% FOREACH qv = [
@@ -441,7 +460,8 @@ function selectProduct(f) {
</select>
</td>
<td>
- <input name="keywords" size="40" value="[% default.keywords.0 FILTER html %]">
+ <input name="keywords" size="40" accesskey="k"
+ value="[% default.keywords.0 FILTER html %]">
</td>
</tr>
[% END %]
@@ -453,21 +473,35 @@ function selectProduct(f) {
<table>
<tr>
- <th align="left"><a href="queryhelp.cgi#status">Status</a>:</th>
- <th align="left"><a href="queryhelp.cgi#resolution">Resolution</a>:</th>
- <th align="left"><a href="queryhelp.cgi#severity">Severity</a>:</th>
- <th align="left"><a href="queryhelp.cgi#priority">Priority</a>:</th>
- <th align="left"><a href="queryhelp.cgi#platform">Hardware</a>:</th>
- <th align="left"><a href="queryhelp.cgi#opsys">OS</a>:</th>
+ <th align="left"><a href="queryhelp.cgi#status">St<u>a</u>tus</a>:</th>
+ <th align="left">
+ <a href="queryhelp.cgi#resolution"><u>R</u>esolution</a>:
+ </th>
+ <th align="left"><a href="queryhelp.cgi#severity">S<u>e</u>verity</a>:</th>
+ <th align="left"><a href="queryhelp.cgi#priority">Pr<u>i</u>ority</a>:</th>
+ <th align="left"><a href="queryhelp.cgi#platform"><u>H</u>ardware</a>:</th>
+ <th align="left"><a href="queryhelp.cgi#opsys"><u>O</u>S</a>:</th>
</tr>
<tr valign="top">
- [% PROCESS select sel = { name => 'bug_status', size => 7 } %]
- [% PROCESS select sel = { name => 'resolution', size => 7 } %]
- [% PROCESS select sel = { name => 'bug_severity', size => 7 } %]
- [% PROCESS select sel = { name => 'priority', size => 7 } %]
- [% PROCESS select sel = { name => 'rep_platform', size => 7 } %]
- [% PROCESS select sel = { name => 'op_sys', size => 7 } %]
+ [% PROCESS select sel = { name => 'bug_status',
+ size => 7,
+ accesskey => 'a' } %]
+ [% PROCESS select sel = { name => 'resolution',
+ size => 7,
+ accesskey => 'r' } %]
+ [% PROCESS select sel = { name => 'bug_severity',
+ size => 7 }
+ accesskey => 'e' %]
+ [% PROCESS select sel = { name => 'priority',
+ size => 7 }
+ accesskey => 'i' %]
+ [% PROCESS select sel = { name => 'rep_platform',
+ size => 7 }
+ accesskey => 'h' %]
+ [% PROCESS select sel = { name => 'op_sys',
+ size => 7 }
+ accesskey => 'o' %]
</tr>
</table>
@@ -659,12 +693,15 @@ function selectProduct(f) {
[% BLOCK select %]
<td align="left">
- <select name="[% sel.name %]" multiple="multiple" size="[% sel.size %]">
- [% FOREACH name = ${sel.name} %]
- <option value="[% name FILTER html %]"
- [% " selected" IF lsearch(default.${sel.name}, name) != -1 %]>
- [% name FILTER html %]</option>
- [% END %]
- </select>
+ <label for="[% sel.name %]" accesskey="[% sel.accesskey %]">
+ <select name="[% sel.name %]" id="[% sel.name %]"
+ multiple="multiple" size="[% sel.size %]">
+ [% FOREACH name = ${sel.name} %]
+ <option value="[% name FILTER html %]"
+ [% " selected" IF lsearch(default.${sel.name}, name) != -1 %]>
+ [% name FILTER html %]</option>
+ [% END %]
+ </select>
+ </label>
</td>
[% END %]