diff options
author | David Lawrence <dlawrence@mozilla.com> | 2011-01-21 05:46:40 +0100 |
---|---|---|
committer | David Lawrence <dlawrence@mozilla.com> | 2011-01-21 05:46:40 +0100 |
commit | bb5a73e5b97c4b73fc14c66afb939aac55c71990 (patch) | |
tree | 98d901324f21193b2fbc7a4b60cc7c49645e98bc | |
parent | fc329ec4b1f0ad1adfe73f8f5adeca308f296977 (diff) | |
download | bugzilla-bb5a73e5b97c4b73fc14c66afb939aac55c71990.tar.gz bugzilla-bb5a73e5b97c4b73fc14c66afb939aac55c71990.tar.xz |
Bug 626658 - Add (take) link to bug edit page to allow quick assigning to the current user
r/a=mkanat
-rw-r--r-- | js/field.js | 13 | ||||
-rw-r--r-- | template/en/default/bug/edit.html.tmpl | 10 |
2 files changed, 19 insertions, 4 deletions
diff --git a/js/field.js b/js/field.js index 6d78a60ce..aa9cd6c7e 100644 --- a/js/field.js +++ b/js/field.js @@ -211,11 +211,11 @@ function setupEditLink(id) { } /* Hide input fields and show the text with (edit) next to it */ -function hideEditableField( container, input, action, field_id, original_value ) { +function hideEditableField( container, input, action, field_id, original_value, new_value ) { YAHOO.util.Dom.removeClass(container, 'bz_default_hidden'); YAHOO.util.Dom.addClass(input, 'bz_default_hidden'); YAHOO.util.Event.addListener(action, 'click', showEditableField, - new Array(container, input)); + new Array(container, input, new_value)); if(field_id != ""){ YAHOO.util.Event.addListener(window, 'load', checkForChangedFieldValues, new Array(container, input, field_id, original_value)); @@ -227,9 +227,9 @@ function hideEditableField( container, input, action, field_id, original_value ) * * var e: the event * var ContainerInputArray: An array containing the (edit) and text area and the input being displayed - * var ContainerInputArray[0]: the conainer that will be hidden usually shows the (edit) text + * var ContainerInputArray[0]: the container that will be hidden usually shows the (edit) or (take) text * var ContainerInputArray[1]: the input area and label that will be displayed - * + * var ContainerInputArray[2]: the new value to set the input field to when (take) is clicked */ function showEditableField (e, ContainerInputArray) { var inputs = new Array(); @@ -246,6 +246,11 @@ function showEditableField (e, ContainerInputArray) { inputs = inputArea.getElementsByTagName('input'); } if ( inputs.length > 0 ) { + // Change the first field's value to ContainerInputArray[2] + // if present before focusing. + if (ContainerInputArray[2]) { + inputs[0].value = ContainerInputArray[2]; + } // focus on the first field, this makes it easier to edit inputs[0].focus(); inputs[0].select(); diff --git a/template/en/default/bug/edit.html.tmpl b/template/en/default/bug/edit.html.tmpl index 744afeb2d..e8eaaad1f 100644 --- a/template/en/default/bug/edit.html.tmpl +++ b/template/en/default/bug/edit.html.tmpl @@ -465,6 +465,10 @@ <span> [% INCLUDE global/user.html.tmpl who = bug.assigned_to %] (<a href="#" id="bz_assignee_edit_action">edit</a>) + [% IF bug.assigned_to.id != user.id %] + (<a title="Reassign to yourself" + href="#" id="bz_assignee_take_action">take</a>) + [% END %] </span> </div> <div id="bz_assignee_input"> @@ -485,6 +489,12 @@ 'bz_assignee_edit_action', 'assigned_to', '[% bug.assigned_to.login FILTER js %]' ); + hideEditableField('bz_assignee_edit_container', + 'bz_assignee_input', + 'bz_assignee_take_action', + 'assigned_to', + '[% bug.assigned_to.login FILTER js %]', + '[% user.login FILTER js %]' ); initDefaultCheckbox('assignee'); </script> [% ELSE %] |