diff options
Diffstat (limited to 'template')
-rw-r--r-- | template/en/default/bug/edit.html.tmpl | 53 | ||||
-rw-r--r-- | template/en/default/bug/knob.html.tmpl | 142 | ||||
-rw-r--r-- | template/en/default/global/code-error.html.tmpl | 6 | ||||
-rw-r--r-- | template/en/default/list/edit-multiple.html.tmpl | 94 |
4 files changed, 158 insertions, 137 deletions
diff --git a/template/en/default/bug/edit.html.tmpl b/template/en/default/bug/edit.html.tmpl index 8e4cc9e15..2b70b03a3 100644 --- a/template/en/default/bug/edit.html.tmpl +++ b/template/en/default/bug/edit.html.tmpl @@ -242,7 +242,13 @@ maxrows = 25 cols = constants.COMMENT_COLS %] - [% PROCESS bug/knob.html.tmpl %] + <br> + <div id="knob-buttons"> + <input type="submit" value="Commit" id="commit"> + [% IF bug.user.canmove %] + <input type="submit" name="action" id="action" value="[% Param("move-button-text") %]"> + [% END %] + </div> [% ELSE %] <fieldset> <legend>Note</legend> @@ -357,9 +363,9 @@ <td class="field_label"> <label for="component" accesskey="m"> <b><a href="describecomponents.cgi?product=[% bug.product FILTER url_quote %]"> - Co<u>m</u>ponent</a> + Co<u>m</u>ponent</a>: </b> - </label>: + </label> </td> [% PROCESS select selname => "component" %] </tr> @@ -404,14 +410,7 @@ <b><a href="page.cgi?id=fields.html#status">Status</a></b>: </td> <td id="bz_field_status"> - - [% get_status(bug.bug_status) FILTER html %] - [% get_resolution(bug.resolution) FILTER html %] - - [% IF bug.resolution == "DUPLICATE" %] - of [% terms.bug %] [%+ "${bug.dup_id}" FILTER bug_link(bug.dup_id) FILTER none %] - [% END %] - + [% PROCESS bug/knob.html.tmpl %] </td> </tr> [%###############################################################%] @@ -422,24 +421,20 @@ <label for="priority" accesskey="i"><b><u>I</u>mportance</b></label>: </td> <td> - <table> - <tr> - [% PROCESS select selname => "priority" %] - [% PROCESS select selname = "bug_severity" %] - [% IF bug.use_votes %] - <td> - [% IF bug.votes %] - with - <a href="votes.cgi?action=show_bug&bug_id=[% bug.bug_id %]"> - [% bug.votes %] vote[%IF bug.votes > 1 %]s[% END %] - </a>. - [% END %] - (<a href="votes.cgi?action=show_user&bug_id= - [% bug.bug_id %]#vote_[% bug.bug_id %]">vote</a>) - </td> - [% END %] - </tr> - </table> + [% PROCESS select selname => "priority" no_td=>1 %] + [% PROCESS select selname = "bug_severity" no_td=>1 %] + [% IF bug.use_votes %] + <span id="votes_container"> + [% IF bug.votes %] + with + <a href="votes.cgi?action=show_bug&bug_id=[% bug.bug_id %]"> + [% bug.votes %] vote[%IF bug.votes > 1 %]s[% END %] + </a>. + [% END %] + (<a href="votes.cgi?action=show_user&bug_id= + [% bug.bug_id %]#vote_[% bug.bug_id %]">vote</a>) + </span> + [% END %] </td> </tr> diff --git a/template/en/default/bug/knob.html.tmpl b/template/en/default/bug/knob.html.tmpl index 432e9b309..4cf6031e7 100644 --- a/template/en/default/bug/knob.html.tmpl +++ b/template/en/default/bug/knob.html.tmpl @@ -18,15 +18,16 @@ # Contributor(s): Gervase Markham <gerv@gerv.net> # Vaskin Kissoyan <vkissoyan@yahoo.com> # Frédéric Buclin <LpSolit@gmail.com> + # Guy Pyrzak <guy.pyrzak@gmail.com> #%] [% PROCESS global/variables.none.tmpl %] - -<br> -<div id="knob"> - <div id="knob-options"> +<div id="status"> [% initial_action_shown = 0 %] + [% show_resolution = 0 %] + [% bug_status_select_displayed = 0 %] + [% closed_status_array = [] %] [%# These actions are based on the current custom workflow. %] [% FOREACH bug_status = bug.status.can_change_to %] [% NEXT IF bug.isunconfirmed && bug_status.is_open && !bug.user.canconfirm %] @@ -36,85 +37,114 @@ # for compatibility with older versions. %] [% NEXT IF !bug.isopened && (bug.everconfirmed && bug_status.name == "UNCONFIRMED" || !bug.everconfirmed && bug_status.name == "REOPENED") %] + [% IF NOT bug_status_select_displayed %] + <select name="bug_status" id="bug_status"> + [% bug_status_select_displayed = 1 %] + [% END %] [% PROCESS initial_action %] [% NEXT IF bug_status.name == bug.bug_status %] - <input type="radio" id="knob_[% bug_status.id FILTER html %]" name="knob" - value="[% bug_status.name FILTER html %]"> - <label for="knob_[% bug_status.id FILTER html %]"> - Change status to <b>[% get_status(bug_status.name) FILTER html %]</b> - </label> - [% IF bug.isopened && !bug_status.is_open %] - and set the resolution to [% PROCESS select_resolution field = "knob_${bug_status.id}" %] + <option value="[% bug_status.name FILTER html %]"> + [% get_status(bug_status.name) FILTER html %] + </option> + [% IF !bug_status.is_open %] + [% show_resolution = 1 %] + [% filtered_status = bug_status.name FILTER js %] + [% closed_status_array.push( filtered_status ) %] [% END %] - <br> [% END %] [%# These actions are special and are independent of the workflow. %] [% IF bug.user.canedit || bug.user.isreporter %] + [% IF NOT bug_status_select_displayed %] + <select name="bug_status" id="bug_status"> + [% bug_status_select_displayed = 1 %] + [% END %] [% IF bug.isopened %] [% IF bug.resolution %] [% PROCESS initial_action %] - <input type="radio" id="knob-clear" name="knob" value="clearresolution"> - <label for="knob-clear"> - Clear the resolution (remove the current resolution of - <b>[% get_resolution(bug.resolution) FILTER html %]</b>) - </label> - <br> [% END %] - [% ELSE %] - [% IF bug.resolution != "MOVED" || bug.user.canmove %] + [% ELSIF bug.resolution != "MOVED" || bug.user.canmove %] [% PROCESS initial_action %] - <input type="radio" id="knob_change_resolution" name="knob" value="change_resolution"> - <label for="knob_change_resolution"> - Change <a href="page.cgi?id=fields.html#resolution">resolution</a> to - </label> - [% PROCESS select_resolution field = "knob_change_resolution" %] - <br> - [% END %] + [% show_resolution = 1 %] [% END %] - - [% PROCESS duplicate %] + [% END %] + [% IF bug_status_select_displayed %] + </select> + [% ELSE %] + [% get_status(bug.bug_status) FILTER html %] + [% IF bug.resolution %] + [%+ get_resolution(bug.resolution) FILTER html %] + [% IF bug.dup_id %] + <span id="duplicate_display">of + [% "${terms.bug} ${bug.dup_id}" FILTER bug_link(bug.dup_id) FILTER none %]</span> + [% END %] + [% END %] [% END %] - </div> - - <div id="knob-buttons"> - <input type="submit" value="Commit" id="commit"> - [% IF bug.user.canmove %] - <input type="submit" name="action" id="action" value="[% Param("move-button-text") %]"> + [% IF bug.user.canedit || bug.user.isreporter %] + [% IF show_resolution %] + <noscript><br>resolved as </noscript> + <span id="resolution_settings">[% PROCESS select_resolution %]</span> [% END %] - </div> + <noscript><br> duplicate</noscript> + + <span id="duplicate_settings">of + <span id="dup_id_container" class="bz_default_hidden"> + [% "${terms.bug} ${bug.dup_id}" FILTER bug_link(bug.dup_id) FILTER none %] + (<a href="#" id="dup_id_edit_action">edit</a>) + </span + ><input id="dup_id" name="dup_id" size="6" + value="[% bug.dup_id FILTER html %]"> + </span> + <div id="dup_id_discoverable" class="bz_default_hidden"> + <a href="#" id="dup_id_discoverable_action">Mark as Duplicate</a> + </div> + [% END %] </div> +<script type="text/javascript"> + var close_status_array = new Array("[% closed_status_array.join('", "') FILTER replace(',$', '') + FILTER none %]"); + YAHOO.util.Dom.setStyle('dup_id_discoverable', 'display', 'block'); + hideEditableField( "dup_id_container", "dup_id", 'dup_id_edit_action', + 'dup_id', '[% bug.dup_id FILTER js %]' ) + showHideStatusItems( "", ['[% "is_duplicate" IF bug.dup_id %]', + '[% bug.bug_status FILTER js %]']); + YAHOO.util.Event.addListener( 'bug_status', "change", showHideStatusItems, + ['[% "is_duplicate" IF bug.dup_id %]', + '[% bug.bug_status FILTER js %]']); + YAHOO.util.Event.addListener( 'resolution', "change", showDuplicateItem); + YAHOO.util.Event.addListener( 'dup_id_discoverable_action', + 'click', + setResolutionToDuplicate, + '[% Param('duplicate_or_move_bug_status') + FILTER js %]'); + YAHOO.util.Event.addListener( window, 'load', showHideStatusItems, + ['[% "is_duplicate" IF bug.dup_id %]', + '[% bug.bug_status FILTER js %]'] ); +</script> [%# Common actions %] [% BLOCK initial_action %] - [%# Only show 'Leave as' action in combination with another knob %] [% IF !initial_action_shown %] - <input type="radio" id="knob-leave" name="knob" value="none" checked="checked"> - <label for="knob-leave"> - Leave as <b>[% get_status(bug.bug_status) FILTER html %] - [% get_resolution(bug.resolution) FILTER html %]</b> - </label> - <br> + <option selected value="[% bug.bug_status FILTER html %]"> + [% get_status(bug.bug_status) FILTER html %] + </option> + [% IF !bug.isopened %] + [% show_resolution = 1 %] + [% filtered_status = bug.bug_status FILTER js %] + [% closed_status_array.push(filtered_status) %] + [% END %] [% initial_action_shown = 1 %] [% END %] [% END %] [% BLOCK select_resolution %] - <select name="resolution_[% field FILTER html %]" - onchange="document.forms['changeform'].[% field FILTER html %].checked=true"> + <select name="resolution" id="resolution"> [% FOREACH r = bug.choices.resolution %] - <option value="[% r FILTER html %]">[% get_resolution(r) FILTER html %]</option> + [% NEXT IF r == "MOVED" && bug.resolution != "MOVED" %] + <option value="[% r FILTER html %]" + [% "selected" IF r == bug.resolution %]> + [% get_resolution(r) FILTER html %]</option> [% END %] </select> [% END %] - -[% BLOCK duplicate %] - <input type="radio" id="knob_duplicate" name="knob" value="duplicate"> - <label for="knob_duplicate"> - Mark the [% terms.bug %] as duplicate of [% terms.bug %] # - </label> - <input name="dup_id" size="6" - onchange="if (this.value != '') {document.forms['changeform'].knob_duplicate.checked=true}"> - <br> -[% END %] diff --git a/template/en/default/global/code-error.html.tmpl b/template/en/default/global/code-error.html.tmpl index 7e0e1cd70..80645a851 100644 --- a/template/en/default/global/code-error.html.tmpl +++ b/template/en/default/global/code-error.html.tmpl @@ -394,11 +394,7 @@ [% ELSIF error == "undefined_field" %] Form field [% field FILTER html %] was not defined. - [%# Useful message if browser did not select show_bug radio button %] - [% IF field == "knob" %] - Check that the "Leave as..." radio button was selected. - [% END %] - + [% ELSIF error == "unknown_action" %] [% IF action %] Unknown action [% action FILTER html %]! diff --git a/template/en/default/list/edit-multiple.html.tmpl b/template/en/default/list/edit-multiple.html.tmpl index 5607371eb..fef4c0c99 100644 --- a/template/en/default/list/edit-multiple.html.tmpl +++ b/template/en/default/list/edit-multiple.html.tmpl @@ -18,6 +18,7 @@ # Contributor(s): Myk Melez <myk@mozilla.org> # Max Kanat-Alexander <mkanat@bugzilla.org> # Frédéric Buclin <LpSolit@gmail.com> + # Guy Pyrzak <guy.pyrzak@gmail.com> #%] [% PROCESS global/variables.none.tmpl %] @@ -130,7 +131,11 @@ </td> [% END %] </tr> - + + <tr> + <th><label for="bug_status">Status:</label></th> + <td colspan="3">[% PROCESS status_section %]</td> + </tr> [% IF user.in_group(Param("timetrackinggroup")) %] <tr> <th><label for="estimated_time">Estimated Hours:</label></th> @@ -309,49 +314,6 @@ [% END %] [% END %] - -[% all_open_bugs = !current_bug_statuses.containsany(closedstates) %] -[% all_closed_bugs = !current_bug_statuses.containsany(openstates) %] -[% display_warning = 0 %] - -<input id="knob-none" type="radio" name="knob" value="none" checked="checked"> -<label for="knob-none">Do nothing else</label><br> - -[% FOREACH bug_status = new_bug_statuses %] - <input type="radio" id="knob_[% bug_status.id FILTER html %]" name="knob" - value="[% bug_status.name FILTER html %]"> - <label for="knob_[% bug_status.id FILTER html %]"> - Change status to <b>[% get_status(bug_status.name) FILTER html %]</b> - </label> - [%# Closed bugs cannot have their resolution changed this way. %] - [% IF !bug_status.is_open && !all_closed_bugs %] - and set the resolution to [% PROCESS select_resolution id = bug_status.id %] - [%+ "(*)" UNLESS all_open_bugs %] - [% display_warning = 1 UNLESS all_open_bugs %] - [% END %] - <br> -[% END %] - -[%# If all the bugs being changed are open, allow the user to clear their resolution. %] -[% IF all_open_bugs %] - <input id="knob-clearresolution" type="radio" name="knob" value="clearresolution"> - <label for="knob-clearresolution">Clear the resolution</label><br> -[% END %] - -[%# If all the bugs being changed are closed, allow the user to change their resolution. %] -[% IF all_closed_bugs %] - <input type="radio" id="knob_change_resolution" name="knob" value="change_resolution"> - <label for="knob_change_resolution">Change resolution to</label> - [%+ PROCESS select_resolution id = "change_resolution" %]<br> -[% END %] - -[% IF display_warning %] - <p class="box"> - (*) Note that the resolution will only be applied to open [% terms.bugs %]. - Already closed [% terms.bugs %] will keep their resolution unchanged. - </p> -[% END %] - <input type="submit" id="commit" value="Commit"> [% IF Param('move-enabled') && user.is_mover %] @@ -374,12 +336,50 @@ </select> [% END %] -[% BLOCK select_resolution %] - <select id="resolution_knob_[% id FILTER html %]" name="resolution_knob_[% id FILTER html %]" - onchange="document.forms['changeform'].[% "knob_$id" FILTER html %].checked=true"> +[%############################################################################%] +[%# Status Block #%] +[%############################################################################%] + +[% BLOCK status_section %] + [% all_open_bugs = !current_bug_statuses.containsany(closedstates) %] + [% all_closed_bugs = !current_bug_statuses.containsany(openstates) %] + [% closed_status_array = [] %] + + <select name="bug_status" id="bug_status"> + <option value="[% dontchange FILTER html %]" selected="selected">[% dontchange FILTER html %]</option> + + [% FOREACH bug_status = new_bug_statuses %] + <option value="[% bug_status.name FILTER html %]"> + [% get_status(bug_status.name) FILTER html %] + </option> + [% IF !bug_status.is_open %] + [% filtered_status = bug_status.name FILTER js %] + [% closed_status_array.push( filtered_status ) %] + [% END %] + [% END %] + + [%# If all the bugs being changed are closed, allow the user to change their resolution. %] + [% IF all_closed_bugs %] + [% filtered_status = dontchange FILTER js %] + [% closed_status_array.push( filtered_status ) %] + [% END %] + </select> + + <span id="resolution_settings"> + <select id="resolution" name="resolution"> + <option value="[% dontchange FILTER html %]" selected >[% dontchange FILTER html %]</option> [% FOREACH r = resolutions %] [% NEXT IF !r %] + [% NEXT IF r == "DUPLICATE" || r == "MOVED" %] <option value="[% r FILTER html %]">[% get_resolution(r) FILTER html %]</option> [% END %] </select> + </span> + + <script type="text/javascript"> + var close_status_array = new Array("[% closed_status_array.join('", "') FILTER none %]"); + YAHOO.util.Event.addListener('bug_status', "change", showHideStatusItems, '[% "is_duplicate" IF bug.dup_id %]'); + YAHOO.util.Event.onDOMReady( showHideStatusItems ); + </script> + [% END %] |