Bug 374020: Re-work the bug editing form to be more usable.
Patch By Guy Pyrzak <guy.pyrzak@gmail.com> r=mkanat, a=mkanat git-svn-id: svn://10.0.0.236/trunk@244150 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
83df592abe
commit
1cde523866
@ -134,3 +134,60 @@ function updateCalendarFromField(date_field) {
|
||||
cal.render();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Hide input fields and show the text with (edit) next to it */
|
||||
function hideEditableField( container, input, action, field_id, original_value ) {
|
||||
YAHOO.util.Dom.setStyle(container, 'display', 'inline');
|
||||
YAHOO.util.Dom.setStyle(input, 'display', 'none');
|
||||
YAHOO.util.Event.addListener(action, 'click', showEditableField, new Array(container, input) );
|
||||
if(field_id != ""){
|
||||
YAHOO.util.Event.addListener(window, 'load', checkForChangedFieldValues, new Array(container, input, field_id, original_value ));
|
||||
}
|
||||
}
|
||||
|
||||
/* showEditableField (e, ContainerInputArray)
|
||||
* Function hides the (edit) link and the text and displays the input
|
||||
*
|
||||
* 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[1]: the input area and label that will be displayed
|
||||
*
|
||||
*/
|
||||
function showEditableField (e, ContainerInputArray) {
|
||||
YAHOO.util.Dom.setStyle(ContainerInputArray[0], 'display', 'none');
|
||||
YAHOO.util.Dom.setStyle(ContainerInputArray[1], 'display', 'inline');
|
||||
YAHOO.util.Event.preventDefault(e);
|
||||
}
|
||||
|
||||
|
||||
/* checkForChangedFieldValues(e, array )
|
||||
* Function checks if after the autocomplete by the browser if the values match the originals.
|
||||
* If they don't match then hide the text and show the input so users don't get confused.
|
||||
*
|
||||
* 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[1]: the input area and label that will be displayed
|
||||
* var ContainerInputArray[2]: the field that is on the page, might get changed by browser autocomplete
|
||||
* var ContainerInputArray[3]: the original value from the page loading.
|
||||
*
|
||||
*/
|
||||
function checkForChangedFieldValues(e, ContainerInputArray ) {
|
||||
var el = document.getElementById(ContainerInputArray[2]);
|
||||
if ( el ) {
|
||||
if ( el.value != ContainerInputArray[3] || ( el.value == "" && el.id != "alias") ) {
|
||||
YAHOO.util.Dom.setStyle(ContainerInputArray[0], 'display', 'none');
|
||||
YAHOO.util.Dom.setStyle(ContainerInputArray[1], 'display', 'inline');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function hideAliasAndSummary(short_desc_value, alias_value){
|
||||
// check the short desc field
|
||||
hideEditableField( 'summary_alias_container', 'summary_alias_input', 'editme_action', 'short_desc', short_desc_value);
|
||||
// check that the alias hasn't changed
|
||||
bz_alias_check_array = new Array('summary_alias_container', 'summary_alias_input', 'alias', alias_value )
|
||||
YAHOO.util.Event.addListener( window, 'load', checkForChangedFieldValues, bz_alias_check_array);
|
||||
}
|
||||
|
||||
@ -28,6 +28,10 @@
|
||||
color: #000;
|
||||
background: #fff url("global/body-back.gif") repeat-x;
|
||||
}
|
||||
body, td, th, input {
|
||||
font-family: Verdana, sans-serif;
|
||||
font-size: small;
|
||||
}
|
||||
/* global (end) */
|
||||
|
||||
/* header (begin) */
|
||||
@ -41,11 +45,6 @@
|
||||
display: inline;
|
||||
}
|
||||
|
||||
#header .btn,
|
||||
#header .txt {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
#header .links {
|
||||
font-size: 85%;
|
||||
border-left: 1px solid silver;
|
||||
@ -397,3 +396,5 @@ form#Create .comment {
|
||||
-moz-border-radius: 5px;
|
||||
background: white;
|
||||
}
|
||||
|
||||
|
||||
|
||||
65
mozilla/webtools/bugzilla/skins/standard/show_bug.css
Normal file
65
mozilla/webtools/bugzilla/skins/standard/show_bug.css
Normal file
@ -0,0 +1,65 @@
|
||||
.bz_alias_short_desc_container {
|
||||
margin: 8px 0;
|
||||
padding: 0.3em;
|
||||
background-color: rgb(208, 208, 208);
|
||||
-moz-border-radius: 0.5em;
|
||||
font-size: 125%;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.bz_column_spacer {
|
||||
width: 2em;
|
||||
}
|
||||
|
||||
.bz_default_hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.related_actions {
|
||||
font-size: 0.85em;
|
||||
float: right;
|
||||
list-style-type: none;
|
||||
white-space: nowrap;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.related_actions li {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.bz_show_bug_column {
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.bz_section_spacer {
|
||||
height: 1em;
|
||||
}
|
||||
|
||||
#bz_field_status {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.bz_time_tracking_table {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
.bz_time_tracking_table th {
|
||||
text-align: center;
|
||||
background-color: #ccc;
|
||||
}
|
||||
|
||||
.bz_time_tracking_table td {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.bz_time_tracking_table th,
|
||||
.bz_time_tracking_table td {
|
||||
padding: 4px;
|
||||
border: 1px solid black;
|
||||
|
||||
}
|
||||
|
||||
.bz_time_tracking_table .bz_summarize_time {
|
||||
text-align: right;
|
||||
}
|
||||
@ -176,7 +176,7 @@ sub directive_ok {
|
||||
return 1 if $directive =~ /^(IF|END|UNLESS|FOREACH|PROCESS|INCLUDE|
|
||||
BLOCK|USE|ELSE|NEXT|LAST|DEFAULT|FLUSH|
|
||||
ELSIF|SET|SWITCH|CASE|WHILE|RETURN|STOP|
|
||||
TRY|CATCH|FINAL|THROW|CLEAR|MACRO)/x;
|
||||
TRY|CATCH|FINAL|THROW|CLEAR|MACRO|FILTER)/x;
|
||||
|
||||
# ? :
|
||||
if ($directive =~ /.+\?(.+):(.+)/) {
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
title = "Attachment $attachment.id added to $terms.Bug $attachment.bug_id"
|
||||
javascript_urls = [ "js/util.js", "js/keyword-chooser.js", "js/field.js",
|
||||
"js/yui/yahoo-dom-event.js", "js/yui/calendar.js" ]
|
||||
style_urls = [ "skins/standard/yui/calendar.css" ]
|
||||
style_urls = [ "skins/standard/yui/calendar.css", "skins/standard/show_bug.css" ]
|
||||
doc_section = "bug_page.html"
|
||||
%]
|
||||
|
||||
|
||||
@ -36,7 +36,11 @@
|
||||
|
||||
[% PROCESS global/header.html.tmpl
|
||||
title = "$terms.Bug $id Submitted"
|
||||
javascript_urls = [ "js/util.js", "js/keyword-chooser.js" ]
|
||||
javascript_urls = [ "js/util.js", "js/keyword-chooser.js", "js/field.js",
|
||||
"js/yui/yahoo-dom-event.js", "js/yui/calendar.js" ]
|
||||
style_urls = [ "skins/standard/yui/calendar.css", "skins/standard/show_bug.css" ]
|
||||
|
||||
|
||||
%]
|
||||
|
||||
[% header_done = 1 %]
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -19,6 +19,21 @@
|
||||
#%]
|
||||
|
||||
[% PROCESS global/variables.none.tmpl %]
|
||||
[% IF bottom_navigator == 1 %]
|
||||
<ul class="related_actions">
|
||||
<li><a href="show_bug.cgi?format=multiple&id=
|
||||
[% bug.bug_id FILTER url_quote %]">Format For Printing</a></li>
|
||||
<li> - <a href="show_bug.cgi?ctype=xml&id=
|
||||
[% bug.bug_id FILTER url_quote %]">XML</a></li>
|
||||
<li> - <a href="enter_bug.cgi?cloned_bug_id=
|
||||
[% bug.bug_id FILTER url_quote %]">Clone This
|
||||
[% terms.Bug %]</a></li>
|
||||
[%# Links to more things users can do with this bug. %]
|
||||
[% Hook.process("links") %]
|
||||
<li> - <a href="#">Top of page </a></li>
|
||||
</ul>
|
||||
[% END %]
|
||||
|
||||
|
||||
<div class="navigation">
|
||||
[% IF bug_list && bug_list.size > 0 %]
|
||||
|
||||
@ -44,5 +44,5 @@
|
||||
[% PROCESS global/header.html.tmpl
|
||||
javascript_urls = [ "js/util.js", "js/keyword-chooser.js", "js/field.js",
|
||||
"js/yui/yahoo-dom-event.js", "js/yui/calendar.js" ]
|
||||
style_urls = [ "skins/standard/yui/calendar.css" ]
|
||||
style_urls = [ "skins/standard/yui/calendar.css", "skins/standard/show_bug.css" ]
|
||||
%]
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
]
|
||||
javascript_urls = [ "js/util.js", "js/keyword-chooser.js", "js/field.js",
|
||||
"js/yui/yahoo-dom-event.js", "js/yui/calendar.js" ]
|
||||
style_urls = [ "skins/standard/yui/calendar.css" ]
|
||||
style_urls = [ "skins/standard/yui/calendar.css", "skins/standard/show_bug.css" ]
|
||||
doc_section = "bug_page.html"
|
||||
%]
|
||||
[% END %]
|
||||
@ -57,13 +57,11 @@ doc_section = "bug_page.html"
|
||||
|
||||
[% PROCESS bug/navigate.html.tmpl %]
|
||||
|
||||
<hr>
|
||||
|
||||
[% PROCESS bug/edit.html.tmpl %]
|
||||
|
||||
<hr>
|
||||
|
||||
[% PROCESS bug/navigate.html.tmpl %]
|
||||
[% PROCESS bug/navigate.html.tmpl bottom_navigator => 1%]
|
||||
|
||||
<br>
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user