Bug 321556: Prepare Bugzilla to ship with at least 2 skins.

Patch by Marc Schumann <wurblzap@gmail.com>;
r=myk, a=justdave
This commit is contained in:
wurblzap%gmail.com 2006-10-17 19:58:39 +00:00
parent 442df89916
commit 06fc187443
47 changed files with 484 additions and 364 deletions

View File

@ -0,0 +1,33 @@
/* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code is the Bugzilla Bug Tracking System.
*
* Contributor(s): Marc Schumann <wurblzap@gmail.com>
*/
#footer #useful-links li {
padding-bottom: 0.8ex;
}
#footer .label {
display: block;
float: left;
width: 8.2em;
padding-bottom: 0.1ex;
}
#footer #links-actions .label {
padding-top: 0.35em;
}
#footer .links {
display: inline;
}

View File

@ -21,6 +21,16 @@
.bz_id_column {
}
.bz_row_odd {
background-color: #F7F7F7;
color: #000000;
}
.bz_row_even {
background-color: #FFFFFF;
color: #000000;
}
/* Style bug rows according to severity. */
.bz_blocker { color: red; font-weight: bold; }
.bz_critical { color: red; }

View File

@ -19,30 +19,34 @@
* Christian Reis <kiko@async.com.br>
* Vitaly Harisov <vitaly@rathedg.com>
* Svetlana Harisova <light@rathedg.com>
* Marc Schumann <wurblzap@gmail.com>
*/
body
{
color: #000;
background-color: #fff;
}
/* global (begin) */
body {
font-family: sans-serif;
color: #000;
background: #fff url("global/body-back.gif") repeat-x;
}
/* global (end) */
/* header (begin) */
#header
{
#header {
margin-bottom: 1em;
padding-bottom: 2px;
}
#header form
{
#header form {
font-size: 85%;
display: inline;
}
#header .links
{
font-family: sans-serif;
#header .btn,
#header .txt {
font-size: 80%;
}
#header .links {
font-size: 85%;
border-left: 1px solid silver;
border-right: 1px solid silver;
@ -52,8 +56,7 @@ body
padding: 0.5em;
}
#message
{
#message {
border: 1px solid red;
padding: 0.3em;
@ -63,46 +66,45 @@ body
/* header (end) */
/* banner (begin) */
#banner
{
#banner {
}
/* banner (end) */
/* titles (begin) */
#titles
{
#titles {
width: 100%;
background-color: #404D6C;
color: #fff;
-moz-border-radius: 5px;
font-family: sans-serif;
-moz-border-radius-topleft: 5px;
-moz-border-radius-topright: 5px;
font-size: 110%;
margin: 0;
padding: 0.5em;
vertical-align: bottom;
}
#titles a
{
#titles a {
color: #fff;
}
#titles #title
{
#titles p {
margin: 0;
padding: 0;
}
#titles #title {
font-weight: bold;
white-space: nowrap;
}
#titles #subtitle
{
#titles #subtitle {
font-weight: normal;
width: 100%;
text-align: center;
}
#titles #information
{
#titles #information {
font-weight: normal;
text-align: right;
font-size: 90%;
@ -112,101 +114,82 @@ body
/* titles (end) */
/* footer (begin) */
#footer
{
float: left;
#footer {
margin-top: 5px;
width: 100%;
font-family: sans-serif;
background: #edf2f2;
border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd;
}
#footer form
{
#footer form {
display: inline;
}
#footer .btn, #footer .txt
{
font-size: 0.8em;
#footer .btn,
#footer .txt {
font-size: 80%;
}
#footer #useful-links
{
padding: 0.3em;
}
/* hide from MSIE and NN4 */
[id]#footer #useful-links
{
margin: 0.3em;
#footer #useful-links {
display: table;
padding-left: 1ex;
padding-right: 1ex;
}
#footer #links-actions,
#footer #links-edit,
#footer #links-saved,
#footer #links-special
{
#footer #links-special {
display: table-row;
list-style-type: none;
}
#footer .label
{
width: 8.2em;
display: block;
float: left;
vertical-align: baseline;
padding: 0.1em 0.2em;
}
#footer #links-actions .label
{
padding-top: 0.45em;
}
/* hide from MSIE and NN4 */
[id]#footer .label
{
#footer .label {
display: table-cell;
float: none;
width: auto;
padding-top: 0;
white-space: nowrap;
vertical-align: top;
}
#footer .links
{
#footer .links {
display: table-cell;
padding: 0.1em 0.2em;
}
/* hide from MSIE and NN4 */
[id]#footer .links
{
padding-top: 0;
vertical-align: baseline;
}
/* hide from MSIE and NN4 */
#footer+*
{
clear: both;
vertical-align: top;
}
/* footer (end) */
/* generic (begin) */
body
{
background: #fff url("global/body-back.gif") repeat-x;
/* link lists (begin) */
ul.links {
margin: 0;
padding: 0;
list-style-type: none;
}
ul.links li {
display: inline;
white-space: nowrap;
}
/* link lists (end) */
/* tabs (begin) */
.tabs td {
background: #eee;
text-align: center;
border-style: solid;
border-color: black;
border-width: 0px 0px 2px 0px;
}
.tabs td.selected {
background: white;
border-width: 2px 2px 0px 2px;
}
.tabs td.spacer {
background: white;
}
/* tabs (end) */
/* generic (begin) */
:link {
color: #039;
}
@ -222,6 +205,10 @@ body
:link:active, :link:active {
color: #000;
}
.clickable_area {
cursor: pointer;
}
/* generic (end) */
div#docslinks {
@ -235,60 +222,46 @@ div#docslinks {
margin: 0;
}
.bz_obsolete { text-decoration: line-through; }
.bz_inactive { text-decoration: line-through; }
.bz_obsolete {
text-decoration: line-through;
}
.bz_inactive {
text-decoration: line-through;
}
.bz_closed,
.bz_CLOSED td {
text-decoration: line-through;
}
.bz_private { color: darkred ; background : #f3eeee ; }
.bz_disabled { color: #a0a0a0 ; }
.bz_row_odd
{
background-color: #F7F7F7;
color: #000000;
.bz_private {
color: darkred;
background: #f3eeee;
}
.bz_disabled {
color: #a0a0a0;
}
.bz_row_even
{
background-color: #FFFFFF;
color: #000000;
.bz_comment {
margin-bottom: 2em;
}
.bz_comment { background-color: #e0e0e0; }
.bz_comment_hilite pre
{
.bz_comment_head {
background-color: #e0e0e0;
}
.bz_comment_hilite pre {
background-color: lightgreen;
margin: 0;
padding: 1em 0;
}
td.tab
{
background: #eee;
text-align: center;
border-style: solid;
border-color: black;
border-width: 0px 0px 2px 0px;
}
td.tab.selected
{
background: white;
border-width: 2px 2px 0px 2px;
}
td.tab.spacer
{
background: white;
}
span.quote {
color: #65379c;
}
table#flags th, table#flags td { vertical-align: baseline; text-align: left; }
table#flags th,
table#flags td {
vertical-align: baseline;
text-align: left;
}
.throw_error {
background-color: #ff0000;

View File

@ -39,7 +39,7 @@
[% filtered_login = user.login FILTER html %]
[% PROCESS global/header.html.tmpl
title = "User Preferences"
h2 = filtered_login
subheader = filtered_login
style_urls = ['skins/standard/admin.css']
%]
@ -61,7 +61,10 @@
[% END %]
[% END %]
[% PROCESS global/tabs.html.tmpl %]
[% WRAPPER global/tabs.html.tmpl
tabs = tabs
current_tab = current_tab
%]
[% IF changes_saved %]
<p>
@ -104,4 +107,6 @@
</form>
[% END %]
[% END %]
[% PROCESS global/footer.html.tmpl %]

View File

@ -26,11 +26,11 @@
#%]
[% title = BLOCK %]Add component to Product '[% product.name FILTER html %]'[% END %]
[% h2 = BLOCK %]This page allows you to add a new component to product
[% subheader = BLOCK %]This page allows you to add a new component to product
'[% product.name FILTER html %]'.[% END %]
[% PROCESS global/header.html.tmpl
title = title
h2 = h2
subheader = subheader
%]
<form method="post" action="editcomponents.cgi">

View File

@ -19,11 +19,11 @@
#%]
[% title = BLOCK %]Add Value for the '[% field FILTER html %]' field[% END %]
[% h2 = BLOCK %]This page allows you to add a new value for the
[% subheader = BLOCK %]This page allows you to add a new value for the
'[% field FILTER html %]' field.[% END %]
[% PROCESS global/header.html.tmpl
title = title
h2 = h2
subheader = subheader
%]
<form method="post" action="editvalues.cgi">

View File

@ -28,7 +28,7 @@
[% PROCESS global/header.html.tmpl
title = "Add group"
h2 = "This page allows you to define a new user group."
subheader = "This page allows you to define a new user group."
%]
<form method="post" action="editgroups.cgi">

View File

@ -34,7 +34,7 @@
[% PROCESS global/header.html.tmpl
title = "Edit Groups"
h2 = "This lets you edit the groups available to put users in."
subheader = "This lets you edit the groups available to put users in."
%]
[% edit_contentlink = "editgroups.cgi?action=changeform&amp;group=%%id%%" %]

View File

@ -26,7 +26,7 @@
[% PROCESS global/header.html.tmpl
title = "Add keyword"
h2 = "This page allows you to add a new keyword."
subheader = "This page allows you to add a new keyword."
%]
<form method="post" action="editkeywords.cgi">

View File

@ -25,11 +25,11 @@
#%]
[% title = BLOCK %]Add Milestone to Product '[% product.name FILTER html %]'[% END %]
[% h2 = BLOCK %]This page allows you to add a new milestone to product
[% subheader = BLOCK %]This page allows you to add a new milestone to product
'[% product.name FILTER html %]'.[% END %]
[% PROCESS global/header.html.tmpl
title = title
h2 = h2
subheader = subheader
onload = "document.forms['f'].milestone.focus()"
%]

View File

@ -102,12 +102,14 @@
</tr>
<tr [% IF !Param('usevotes') %]class="param_disabled" [% END %]>
<th align="right">
Number of votes [% terms.abug %] in this product needs to
Confirmation threshold:
</th>
<td>
Enter the number of votes [% terms.abug %] in this product needs to
automatically get out of the
<a href="page.cgi?id=fields.html#status">[% status_descs.UNCONFIRMED FILTER html %]</a>
state:
</th>
<td><input size="5" maxlength="5" name="votestoconfirm"
value="[% product.votestoconfirm FILTER html %]">
state.<br>
<input size="5" maxlength="5" name="votestoconfirm"
value="[% product.votestoconfirm FILTER html %]">
</td>
</tr>

View File

@ -55,7 +55,7 @@ page, and the Default Value will automatically apply to everyone.
<th>Preference Text</th>
<th>Default Value</th>
<th>Enabled</th>
<tr>
</tr>
[% FOREACH name = setting_names %]
[% checkbox_name = name _ '-enabled' %]

View File

@ -48,8 +48,9 @@
[% ELSE %]
enter the login of
[% END %]
the <u>u</u>ser to impersonate:
<label for="target_login">the <u>u</u>ser to impersonate</label>:
[% INCLUDE global/userselect.html.tmpl
id => "target_login"
name => "target_login"
value => "$target_login_default"
accesskey => "u"
@ -65,9 +66,10 @@
[% END %]
<p>
Next, please take a moment to explain why you are doing this:<br>
<input type="text" name="reason" size="80" maxlength="200" value="
[%- reason_default FILTER html %]">
Next, please take a moment to explain <label for="reason">why you are doing
this:<br>
<input type="text" id="reason" name="reason" size="80" maxlength="200"
value="[% reason_default FILTER html %]">
</p>
<p>
@ -78,10 +80,12 @@
[% IF user.authorizer.can_login %]
<p>
Finally, enter your [% terms.Bugzilla %] password:
Finally, enter <label for="Bugzilla_password">your [% terms.Bugzilla %]
password</label>:
<input type="hidden" name="Bugzilla_login" value="
[%- user.login FILTER html %]">
<input type="password" name="Bugzilla_password" maxlength="20" size="20">
<input type="password" id="Bugzilla_password" name="Bugzilla_password"
maxlength="20" size="20">
<br>
This is done for two reasons. First of all, it is done to reduce
the chances of someone doing large amounts of damage using your

View File

@ -25,11 +25,11 @@
#%]
[% title = BLOCK %]Add Version to Product '[% product.name FILTER html %]'[% END %]
[% h2 = BLOCK %]This page allows you to add a new version to product
[% subheader = BLOCK %]This page allows you to add a new version to product
'[% product.name FILTER html %]'.[% END %]
[% PROCESS global/header.html.tmpl
title = title
h2 = h2
subheader = subheader
%]
<form method="post" action="editversions.cgi">

View File

@ -26,14 +26,14 @@
[%# Define strings that will serve as the title and header of this page %]
[% title = BLOCK %]Create New Attachment for [% terms.Bug %] #[% bugid %][% END %]
[% h1 = BLOCK %]Create New Attachment for
[% header = BLOCK %]Create New Attachment for
[%+ "$terms.Bug $bugid" FILTER bug_link(bugid) FILTER none %][% END %]
[% h2 = BLOCK %][% bugsummary FILTER html %][% END %]
[% subheader = BLOCK %][% bugsummary FILTER html %][% END %]
[% PROCESS global/header.html.tmpl
title = title
h1 = h1
h2 = h2
header = header
subheader = subheader
onload="setContentTypeDisabledState(document.entryform);"
style_urls = [ 'skins/standard/create_attachment.css' ]
javascript_urls = [ "js/attachment.js" ]

View File

@ -207,7 +207,7 @@ tbody.file pre:empty {
[% BLOCK diffurl %][% PROCESS viewurl %]&amp;action=diff[% END %]
[% IF headers %]
[% h1 = BLOCK %]
[% header = BLOCK %]
[% IF attachid %]
Attachment #[% attachid %]: [% description FILTER html %]
[% ELSE %]
@ -218,7 +218,7 @@ tbody.file pre:empty {
[% END %]
for <a href="show_bug.cgi?id=[% bugid %]">[% terms.bug %] #[% bugid %]</a>
[% END %]
[% h2 = BLOCK %]
[% subheader = BLOCK %]
[% bugsummary FILTER html %]
[% END %]
[% PROCESS global/header.html.tmpl %]

View File

@ -26,16 +26,16 @@
[% title = BLOCK %]
Attachment [% attachment.id %] Details for [% terms.Bug %] [%+ attachment.bug_id %]
[% END %]
[% h1 = BLOCK %]
[% header = BLOCK %]
Attachment [% attachment.id %] Details for
[%+ "$terms.Bug ${attachment.bug_id}" FILTER bug_link(attachment.bug_id) FILTER none %]
[% END %]
[% h2 = BLOCK %][% bugsummary FILTER html %][% END %]
[% subheader = BLOCK %][% bugsummary FILTER html %][% END %]
[% PROCESS global/header.html.tmpl
title = title
h1 = h1
h2 = h2
header = header
subheader = subheader
style = "
table.attachment_info th { text-align: right; vertical-align: top; }
table.attachment_info td { text-align: left; vertical-align: top; }
@ -211,8 +211,9 @@
<tr>
<td width="25%">
<small>
<b>Description:</b><br>
<b><label for="description">Description</label>:</b><br>
[% INCLUDE global/textarea.html.tmpl
id = 'description'
name = 'description'
minrows = 3
cols = 25
@ -226,8 +227,8 @@
<input type="hidden" name="contenttypeentry"
value="[% attachment.contenttype FILTER html %]"><br>
[% ELSE %]
<b>Filename:</b><br>
<input type="text" size="20" name="filename"
<b><label for="filename">Filename</label>:</b><br>
<input type="text" size="20" id="filename" name="filename"
value="[% attachment.filename FILTER html %]"><br>
<b>Size:</b>
[% IF attachment.datasize %]
@ -236,8 +237,9 @@
<em>deleted</em>
[% END %]<br>
<b>MIME Type:</b><br>
<input type="text" size="20" name="contenttypeentry"
<b><label for="contenttypeentry">MIME Type</label>:</b><br>
<input type="text" size="20"
id="contenttypeentry" name="contenttypeentry"
value="[% attachment.contenttype FILTER html %]"><br>
<input type="checkbox" id="ispatch" name="ispatch" value="1"
@ -246,12 +248,13 @@
[% END %]
<input type="checkbox" id="isobsolete" name="isobsolete" value="1"
[% 'checked="checked"' IF attachment.isobsolete %]>
<label for="isobsolete">obsolete</label><br>
<label for="isobsolete">obsolete</label>
[% IF (Param("insidergroup") && user.in_group(Param("insidergroup"))) %]
<input type="checkbox" name="isprivate" value="1"
[% " checked" IF attachment.isprivate %]> private<br><br>
[% ELSE %]<br>
<input type="checkbox" id="isprivate" name="isprivate" value="1"
[% " checked" IF attachment.isprivate %]>
<label for="isprivate">private</label><br>
[% END %]
<br>
[% IF flag_types.size > 0 %]
[% PROCESS "flag/list.html.tmpl" bug_id = attachment.bug_id
@ -259,8 +262,10 @@
[% END %]
<div id="smallCommentFrame">
<b>Comment (on the [% terms.bug %]):</b><br>
<b><label for="comment">Comment</label> (on the
[%+ terms.bug %]):</b><br>
[% INCLUDE global/textarea.html.tmpl
id = 'comment'
name = 'comment'
minrows = 5
cols = 25

View File

@ -21,12 +21,12 @@
[% PROCESS global/variables.none.tmpl %]
[% filtered_summary = bugsummary FILTER html %]
[% h1 = BLOCK %]View All Attachments for
[% header = BLOCK %]View All Attachments for
[%+ "$terms.Bug $bugid" FILTER bug_link(bugid) FILTER none %][% END %]
[% PROCESS global/header.html.tmpl
title = "View All Attachments for $terms.Bug #$bugid"
h1 = h1
h2 = filtered_summary
header = header
subheader = filtered_summary
style = "
table.attachment_info th { text-align: right; vertical-align: top; }
table.attachment_info td { text-align: left; vertical-align: top; }

View File

@ -30,8 +30,8 @@
[% PROCESS global/header.html.tmpl
title = "Changes made to $terms.bug $bug_id"
h1 = "Activity log"
h2 = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
header = "Activity log"
subheader = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
%]
<br>

View File

@ -26,11 +26,15 @@
<script type="text/javascript">
<!--
function updateCommentPrivacy(checkbox, id) {
var text_elem = document.getElementById('comment_text_'+id);
var comment_elem = document.getElementById('comment_text_'+id).parentNode;
if (checkbox.checked) {
text_elem.parentNode.className='bz_private';
} else {
text_elem.parentNode.className='';
if (!comment_elem.className.match('bz_private')) {
comment_elem.className = comment_elem.className.concat(' bz_private');
}
}
else {
comment_elem.className =
comment_elem.className.replace(/(\s*|^)bz_private(\s*|$)/, '$2');
}
}
//-->
@ -85,12 +89,12 @@
[% BLOCK a_comment %]
[% IF NOT comment.isprivate || isinsider %]
<div [% "class=\"bz_private\" " IF comment.isprivate %]
[% "class=\"bz_comment_hilite\" " IF marks.$count %]>
<div class="bz_comment[% " bz_private" IF comment.isprivate %]
[% " bz_comment_hilite" IF marks.$count %]">
[% IF count == description %]
<table>
<tr>
<td align="left">
<th align="left">
<b><a name="c0" href="show_bug.cgi?id=[% bug.bug_id %]#c0">
Description</a>:</b>&nbsp;&nbsp;
[% IF mode == "edit" %]
@ -98,16 +102,15 @@
addReplyLink(0);
//--></script>
[% END %]
</td>
</th>
<td align="left" width="30%">
<b>Opened:</b> [% bug.creation_ts FILTER time %]
</td>
</tr>
</table>
[% ELSE %]
<br>
<span class="bz_comment">
------- <i>Comment
<span class="bz_comment_head">
<span class="comment_rule">-------</span> <i>Comment
<a name="c[% count %]" href="show_bug.cgi?id=[% bug.bug_id %]#c[% count %]">
#[% count %]</a> From
<a href="mailto:[% comment.email FILTER html %]">
@ -118,7 +121,7 @@
<script type="text/javascript"><!--
addReplyLink([% count %]); //--></script>
[% END %]
-------
<span class="comment_rule">-------</span>
</span>
[% END %]

View File

@ -29,7 +29,7 @@
[% PROCESS global/header.html.tmpl
title = "Bookmarks are your friend"
h1 = "Template constructed"
header = "Template constructed"
%]
<p>

View File

@ -35,14 +35,14 @@
[% PROCESS global/variables.none.tmpl %]
[% title = "Dependency Graph"
h1 = title
header = title
%]
[% IF NOT multiple_bugs AND NOT doall %]
[% filtered_desc = short_desc FILTER html %]
[% title = "$title for $terms.bug $bug_id"
h1 = "$h1 for $terms.bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
h2 = filtered_desc
header = "$header for $terms.bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
subheader = filtered_desc
%]
[% END %]

View File

@ -26,12 +26,12 @@
[% filtered_desc = blocked_tree.$bugid.short_desc FILTER html %]
[% PROCESS global/header.html.tmpl
title = "Dependency tree for $terms.Bug $bugid"
h1 = "Dependency tree for
<a href=\"show_bug.cgi?id=$bugid\">$terms.Bug $bugid</a>"
title = "Dependency tree for $terms.Bug $bugid"
header = "Dependency tree for
<a href=\"show_bug.cgi?id=$bugid\">$terms.Bug $bugid</a>"
javascript_urls = ["js/expanding-tree.js"]
style_urls = ["skins/standard/dependency-tree.css"]
h2 = filtered_desc
style_urls = ["skins/standard/dependency-tree.css"]
subheader = filtered_desc
%]
[% PROCESS depthControlToolbar %]

View File

@ -665,10 +665,12 @@
<hr>
<div id="comments">
[% PROCESS bug/comments.html.tmpl
comments = bug.longdescs
mode = "edit"
%]
</div>
</form>

View File

@ -24,7 +24,9 @@
[%# *** Knob *** %]
<br>
<br>
<div id="knob">
<div id="knob-options">
[% knum = 1 %]
[% initial_action_shown = 0 %]
@ -155,7 +157,9 @@
[% END %]
[% END %]
[% END %]
</div>
<div id="knob-buttons">
<input type="submit" value="Commit" id="commit">
<p>
<font size="+1">
@ -179,6 +183,8 @@
value="[% Param("move-button-text") %]">
[% END %]
</p>
</div>
</div>
[%# Common actions %]

View File

@ -31,10 +31,10 @@
[% filtered_desc = bug.short_desc FILTER html %]
[% filtered_timestamp = bug.delta_ts FILTER time %]
[% PROCESS global/header.html.tmpl
title = "$terms.Bug $bug.bug_id - $filtered_desc"
h1 = "$terms.Bug&nbsp;$bug.bug_id"
h2 = filtered_desc
h3 = "Last modified: $filtered_timestamp"
title = "$terms.Bug $bug.bug_id &ndash; $filtered_desc"
header = "$terms.Bug&nbsp;$bug.bug_id"
subheader = filtered_desc
header_addl_info = "Last modified: $filtered_timestamp"
bodyclasses = ['bz_bug',
"bz_status_$bug.bug_status",
"bz_component_$bug.component",

View File

@ -21,17 +21,17 @@
[% title = "Time Summary " %]
[% IF do_depends %]
[% title = title _ "for " %]
[% h1 = title _ "$terms.Bug $ids.0" FILTER bug_link(ids.0) FILTER none %]
[% header = title _ "$terms.Bug $ids.0" FILTER bug_link(ids.0) FILTER none %]
[% title = title _ "$terms.Bug $ids.0: " %]
[% h1 = (h1 _ " (and $terms.bugs blocking it)") IF do_depends %]
[% header = (header _ " (and $terms.bugs blocking it)") IF do_depends %]
[% ELSE %]
[% title = title _ "($ids.size $terms.bugs selected)" %]
[% h1 = title %]
[% header = title %]
[% END %]
[% PROCESS global/header.html.tmpl
title = title
h1 = h1
header = header
style_urls = ["skins/standard/summarize-time.css"]
%]

View File

@ -30,7 +30,7 @@
[% PROCESS global/header.html.tmpl
title = "Show Votes"
h2 = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
subheader = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
%]
[% total = 0 %]

View File

@ -39,7 +39,7 @@
[% PROCESS global/variables.none.tmpl %]
[% IF !header_done %]
[% h2 = voting_user.login FILTER html %]
[% subheader = voting_user.login FILTER html %]
[% IF canedit %]
[% title = "Change Votes" %]
[% IF bug_id %]

View File

@ -85,6 +85,10 @@
'status.name',
],
'search/tabs.html.tmpl' => [
'content',
],
'request/queue.html.tmpl' => [
'column_headers.$group_field',
'column_headers.$column',
@ -233,9 +237,9 @@
'style',
'onload',
'title',
'h1',
'h2',
'h3',
'" &ndash; $header" IF header',
'subheader',
'header_addl_info',
'message',
],
@ -249,6 +253,10 @@
'size',
],
'global/tabs.html.tmpl' => [
'content',
],
'global/common-links.html.tmpl' => [
'email',
],

View File

@ -23,7 +23,7 @@
[% IF target == "enter_bug.cgi" %]
[% title = "Select Classification" %]
[% h2 = "Please select the classification." %]
[% subheader = "Please select the classification." %]
[% END %]
[% DEFAULT title = "Choose the classification" %]
@ -33,20 +33,20 @@
[% IF Param('showallproducts') %]
<tr>
<th align="right" valign="center" height=50>
<th align="right">
<a href="[% target FILTER url_quote %]?classification=__all
[% IF cloned_bug_id %]&amp;cloned_bug_id=[% cloned_bug_id FILTER url_quote %][% END -%]
[%- IF format %]&amp;format=[% format FILTER url_quote %][% END %]">
All</a>:
</th>
<td valign="center">&nbsp;Show all products</td>
<td valign="top">&nbsp;Show all products</td>
</tr>
[% END %]
[% FOREACH class = classifications %]
<tr>
<th align="right" valign="top">
<th align="right">
<a href="[% target FILTER url_quote %]?classification=[% class.name FILTER url_quote -%]
[%- IF cloned_bug_id %]&amp;cloned_bug_id=[% cloned_bug_id FILTER url_quote %][% END -%]
[%- IF format %]&amp;format=[% format FILTER url_quote %][% END %]">

View File

@ -31,10 +31,10 @@
[% IF target == "enter_bug.cgi" %]
[% title = "Enter $terms.Bug" %]
[% h2 = BLOCK %]First, you must pick a product on which to enter [% terms.abug %]. [% END %]
[% subheader = BLOCK %]First, you must pick a product on which to enter [% terms.abug %]. [% END %]
[% ELSIF target == "describecomponents.cgi" %]
[% title = "$terms.Bugzilla Component Descriptions" %]
[% h2 = "Please specify the product whose components you want described." %]
[% subheader = "Please specify the product whose components you want described." %]
[% END %]
[% DEFAULT title = "Choose a Product" %]

View File

@ -22,54 +22,63 @@
[% DEFAULT btn_id = "find" %]
<div class="links">
<a href="./">Home</a> |
<a href="enter_bug.cgi">New</a> |
<a href="query.cgi">Search</a> |
<ul class="links">
<li><a href="./">Home</a></li>
<li><span class="separator">| </span><a href="enter_bug.cgi">New</a></li>
<li><span class="separator">| </span><a href="query.cgi">Search</a></li>
<form action="buglist.cgi" method="get"
<li class="form">
<span class="separator">| </span>
<form action="buglist.cgi" method="get"
onsubmit="if (this.quicksearch.value == '')
{ alert('Please enter one or more search terms first.');
return false; } return true;">
<input class="txt" type="text" name="quicksearch">
<input class="btn" type="submit" value="Find" id="[% btn_id FILTER html %]">
</form> |
[%-# Work around FF bug: keep this on one line %]</form></li>
<a href="report.cgi">Reports</a>
<li><span class="separator">| </span><a href="report.cgi">Reports</a></li>
[% IF user.id %]
[% email = user.login FILTER url_quote %]
| <a href="request.cgi?requester=[% email %]&amp;requestee=
[%- email %]&amp;do_union=1&amp;group=type">My Requests</a>
[% ELSE %]
| <a href="request.cgi">Requests</a>
[% END %]
<li>
<span class="separator">| </span>
[% IF user.id %]
[% email = user.login FILTER url_quote %]
<a href="request.cgi?requester=[% email %]&amp;requestee=
[% email %]&amp;do_union=1&amp;group=type">My Requests</a>
[% ELSE %]
<a href="request.cgi">Requests</a>
[% END %]
[%-# Work around FF bug: keep this on one line %]</li>
[% IF user.id && Param('usevotes') %]
| <a href="votes.cgi?action=show_user">My&nbsp;Votes</a>
<li><span class="separator">| </span><a href="votes.cgi?action=show_user">My&nbsp;Votes</a></li>
[% END %]
[% IF user.login %]
[% ' | <a href="sanitycheck.cgi">Sanity&nbsp;check</a>' IF user.groups.tweakparams %]
[% IF user.authorizer.can_logout %]
| <a href="relogin.cgi">Log&nbsp;out</a>
[% ELSE %]
| Logged&nbsp;in&nbsp;as
[% END %]
[% IF sudoer %]
[%+ sudoer.login FILTER html %] (<b>impersonating
[%+ user.login FILTER html %]</b>
<a href="relogin.cgi?action=end-sudo">end session</a>)
[% ELSE %]
[%+ user.login FILTER html %]
[% END %]
[% '<li><span class="separator">| </span><a href="sanitycheck.cgi">Sanity&nbsp;check</a></li>'
IF user.groups.tweakparams %]
<li>
<span class="separator">| </span>
[% IF user.authorizer.can_logout %]
<a href="relogin.cgi">Log&nbsp;out</a>
[% ELSE %]
Logged&nbsp;in&nbsp;as
[% END %]
[% IF sudoer %]
[%+ sudoer.login FILTER html %] (<b>impersonating
[%+ user.login FILTER html %]</b>
<a href="relogin.cgi?action=end-sudo">end session</a>)
[% ELSE %]
[%+ user.login FILTER html %]
[% END %]
[%-# Work around FF bug: keep this on one line %]</li>
[% ELSE %]
[% IF Param('createemailregexp')
&& user.authorizer.user_can_create_account %]
| <a href="createaccount.cgi">New&nbsp;Account</a>
<li><span class="separator">| </span><a href="createaccount.cgi">New&nbsp;Account</a></li>
[% END %]
[% IF user.authorizer.can_login %]
| <a href="index.cgi?GoAheadAndLogIn=1">Log&nbsp;In</a>
<li><span class="separator">| </span><a href="index.cgi?GoAheadAndLogIn=1">Log&nbsp;In</a></li>
[% END %]
[% END %]
</div>
</ul>

View File

@ -27,6 +27,8 @@
[% INCLUDE "global/help.html.tmpl" %]
</div>
[%# Migration note: below this point, this file corresponds to the old Param
# 'footerhtml'
#%]
@ -45,3 +47,4 @@
</body>
</html>

View File

@ -25,9 +25,9 @@
[%# INTERFACE:
# (All the below interface elements are optional.)
# title: string. Page title.
# h1: string. Main page header.
# h2: string. Page subheader.
# h3: string. Right-aligned subheader.
# header: string. Main page header.
# subheader: string. Page subheader.
# header_addl_info: string. Additional header information.
# bodyclasses: array of extra CSS classes for the <body>
# onload: string. JavaScript code to run when the page finishes loading.
# javascript: string. Javascript to go in the header.
@ -43,20 +43,20 @@
[% END %]
[% DEFAULT
h2 = ""
h3 = ""
subheader = ""
header_addl_info = ""
onload = ""
style_urls = []
%]
[%# We should be able to set the default value of the h1 variable
[%# We should be able to set the default value of the header variable
# to the value of the title variable using the DEFAULT directive,
# but that doesn't work if a caller sets h1 to the empty string
# to avoid h1 inheriting the value of title, since DEFAULT
# mistakenly treats empty strings as undefined and gives h1 the
# but that doesn't work if a caller sets header to the empty string
# to avoid header inheriting the value of title, since DEFAULT
# mistakenly treats empty strings as undefined and gives header the
# value of title anyway. To get around that problem we explicitly
# set h1's default value here only if it is undefined. %]
[% IF !h1.defined %][% h1 = title %][% END %]
# set header's default value here only if it is undefined. %]
[% IF !header.defined %][% header = title %][% END %]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
@ -106,6 +106,14 @@
rel="stylesheet"
type="text/css">
[% END %]
<!--[if IE]>
[%# Internet Explorer treats [if IE] HTML comments as uncommented.
# Use it to import CSS fixes so that Bugzilla looks decent on IE, too.
#%]
<link href="skins/standard/IE-fixes.css"
rel="stylesheet"
type="text/css">
<![endif]-->
[%# CSS cascade, part 2: Standard Bugzilla stylesheet set (selectable)
# Present if skin selection is enabled.
@ -117,6 +125,16 @@
title="[% setting_descs.standard FILTER html %]"
type="text/css">
[% END %]
<!--[if IE]>
[%# Internet Explorer treats [if IE] HTML comments as uncommented.
# Use it to import CSS fixes so that Bugzilla looks decent on IE,
# too.
#%]
<link href="skins/standard/IE-fixes.css"
rel="[% 'alternate ' IF user_skin %]stylesheet"
title="[% setting_descs.standard FILTER html %]"
type="text/css">
<![endif]-->
[% END %]
[%# CSS cascade, part 3: Third-party stylesheet set (selectable).
@ -145,6 +163,16 @@
type="text/css">
[% END %]
[% END %]
<!--[if IE]>
[%# Internet Explorer treats [if IE] HTML comments as uncommented.
# Use it to import CSS fixes so that Bugzilla looks decent on IE,
# too.
#%]
<link href="skins/contrib/[% contrib_skin FILTER html %]/IE-fixes.css"
rel="[% 'alternate ' UNLESS contrib_skin == user_skin %]stylesheet"
title="[% contrib_skin FILTER html %]"
type="text/css">
<![endif]-->
[% END %]
[% END %]
@ -166,6 +194,14 @@
FILTER html %]" rel="stylesheet" type="text/css">
[% END %]
[% END %]
<!--[if IE]>
[%# Internet Explorer treats [if IE] HTML comments as uncommented.
# Use it to import CSS fixes so that Bugzilla looks decent on IE, too.
#%]
<link href="skins/custom/IE-fixes.css"
rel="stylesheet"
type="text/css">
<![endif]-->
[%# this puts the live bookmark up on firefox for the Atom feed %]
[% IF atomlink %]
@ -200,19 +236,20 @@
<table border="0" cellspacing="0" cellpadding="0" id="titles">
<tr>
<td id="title">
[% terms.Bugzilla %][% IF h1 %] - [% h1 %] [% END %]
</td>
<td id="title">
<p>[% terms.Bugzilla %]
[% " &ndash; $header" IF header %]</p>
</td>
[% IF h2 %]
[% IF subheader %]
<td id="subtitle">
[% h2 %]
<p class="subheader">[% subheader %]</p>
</td>
[% END %]
[% IF h3 %]
[% IF header_addl_info %]
<td id="information">
[% h3 %]
<p class="header_addl_info">[% header_addl_info %]</p>
</td>
[% END %]
</tr>
@ -220,6 +257,10 @@
[% PROCESS "global/common-links.html.tmpl" btn_id = "find_top" %]
</div>
<div id="bugzilla-body">
[% IF Param('announcehtml') %]
[% Param('announcehtml') FILTER none %]
[% END %]
@ -227,5 +268,3 @@
[% IF message %]
<div id="message">[% message %]</div>
[% END %]
</div>

View File

@ -58,10 +58,9 @@
[% lists_of_bugs.push(q.name) %]
[% END %]
<div id="links-special">
<div class="label">&nbsp;</div>
<div class="links">
<hr>
<li id="links-special">
<div class="label"></div>
<ul class="links"><li class="form">
<form id="list_of_bugs" action="buglist.cgi" method="get">
<input type="hidden" name="cmdtype" value="doit">
<input type="hidden" name="remtype" value="asnamed">
@ -84,11 +83,12 @@
[% END %]
<span id="lob_new_query_text">
[% " or to" IF lists_of_bugs.size %] the new saved search:
<input type="text" id="lob_newqueryname" name="newqueryname" size="20" maxlength="64"
<input class="txt" type="text" id="lob_newqueryname"
size="20" maxlength="64" name="newqueryname"
onkeyup="manage_old_lists();">
</span>
<input type="submit" value="Commit" id="commit_list_of_bugs">
</form>
</div>
</div>
</li></ul>
</li>
[% END %]

View File

@ -18,6 +18,7 @@
#
# Contributor(s): Gervase Markham <gerv@gerv.net>
# Myk Melez <myk@mozilla.org>
# Marc Schumann <wurblzap@gmail.com>
#%]
[%# INTERFACE:
@ -28,20 +29,25 @@
# current_tab_name: string. name of the currently selected tab
#%]
<center>
<table cellspacing="0" cellpadding="10" border="0" width="100%">
<div class="tabbed">
<table class="tabs" cellspacing="0" cellpadding="10" border="0" width="100%">
<tr>
<td class="tab spacer">&nbsp;</td>
<td class="spacer">&nbsp;</td>
[% FOREACH tab = tabs %]
[% IF tab.name == current_tab_name %]
<td class="tab selected">[% tab.label FILTER html %]</td>
<td class="selected">[% tab.label FILTER html %]</td>
[% ELSE %]
<td class="tab"><a href="[% tab.link FILTER html %]">[% tab.label FILTER html %]</a></td>
<td class="clickable_area" onClick="document.location='[% tab.link FILTER html %]'"><a href="[% tab.link FILTER html %]">[% tab.label FILTER html %]</a></td>
[% END %]
[% END %]
<td class="tab spacer">&nbsp;</td>
</tr>
</table>
</center>
<td class="spacer">&nbsp;</td>
</tr>
</table>
<div class="tabbody">
[% content %]
</div>
</div>

View File

@ -26,86 +26,87 @@
[% PROCESS global/variables.none.tmpl %]
<div id="useful-links">
<div id="links-actions">
<ul id="useful-links">
<li id="links-actions">
<div class="label">Actions:</div>
[% PROCESS "global/common-links.html.tmpl" btn_id = "find_bottom" %]
</div>
[% PROCESS "global/common-links.html.tmpl" btn_id = "find_bottom" %]
</li>
[% IF user.login %]
<div id="links-edit">
<div class="label">Edit:</div>
<div class="links">
<a href="userprefs.cgi">Prefs</a>
[% ' | <a href="editparams.cgi">Parameters</a> ' _
' | <a href="editsettings.cgi">User Preferences</a>'
[% IF user.login %]
<li id="links-edit">
<div class="label">Edit:</div>
<ul class="links">
<li><a href="userprefs.cgi">Prefs</a></li>
[% ' <li><span class="separator">| </span><a href="editparams.cgi">Parameters</a></li>' _
' <li><span class="separator">| </span><a href="editsettings.cgi">User Preferences</a></li>'
IF user.groups.tweakparams %]
[% ' | <a href="editusers.cgi">Users</a>' IF user.groups.editusers
[% ' <li><span class="separator">| </span><a href="editusers.cgi">Users</a></li>' IF user.groups.editusers
|| user.can_bless %]
[% IF Param('useclassification') && user.groups.editclassifications %]
[% ' | <a href="editclassifications.cgi">Classifications</a>' %]
[% END %]
[% ' | <a href="editproducts.cgi">Products</a>'
[% ' <li><span class="separator">| </span><a href="editclassifications.cgi">Classifications</a></li>' %]
[% END %]
[% ' <li><span class="separator">| </span><a href="editproducts.cgi">Products</a></li>'
IF user.groups.editcomponents %]
[% ' | <a href="editflagtypes.cgi">Flags</a>'
[% ' <li><span class="separator">| </span><a href="editflagtypes.cgi">Flags</a></li>'
IF user.groups.editcomponents %]
[% ' | <a href="editfields.cgi">Custom Fields</a>'
[% ' <li><span class="separator">| </span><a href="editfields.cgi">Custom Fields</a></li>'
IF user.groups.admin %]
[% ' | <a href="editvalues.cgi">Field Values</a>'
[% ' <li><span class="separator">| </span><a href="editvalues.cgi">Field Values</a></li>'
IF user.groups.editcomponents %]
[% ' | <a href="editgroups.cgi">Groups</a>'
[% ' <li><span class="separator">| </span><a href="editgroups.cgi">Groups</a></li>'
IF user.groups.creategroups %]
[% ' | <a href="editkeywords.cgi">Keywords</a>'
[% ' <li><span class="separator">| </span><a href="editkeywords.cgi">Keywords</a></li>'
IF user.groups.editkeywords %]
[% ' | <a href="editwhines.cgi">Whining</a>'
[% ' <li><span class="separator">| </span><a href="editwhines.cgi">Whining</a></li>'
IF user.groups.bz_canusewhines %]
</div>
</div>
[% END %]
</ul>
</li>
[% END %]
[%# Saved searches %]
<div id="links-saved">
<div class="label">
[% IF user.showmybugslink OR user.queries.size %]
Saved&nbsp;Searches:
[% END %]
</div>
<div class="links">
[% IF user.showmybugslink %]
[% filtered_username = user.login FILTER url_quote %]
<a href="[% Param('mybugstemplate').replace('%userid%', filtered_username) %]">My&nbsp;[% terms.Bugs %]</a>
[% print_pipe = 1 %]
[% END %]
[% FOREACH q = user.queries %]
[% NEXT IF q.userid != user.id %]
[% IF q.link_in_footer %]
[% " | " IF print_pipe %]
<a href="buglist.cgi?cmdtype=dorem&amp;remaction=run&amp;namedcmd=
[% q.name FILTER url_quote %]">[% q.name FILTER html FILTER no_break %]</a>
[% IF user.showmybugslink OR user.queries.size %]
<li id="links-saved">
<div class="label">
Saved Searches:
</div>
<ul class="links">
[% IF user.showmybugslink %]
[% filtered_username = user.login FILTER url_quote %]
<li><a href="[% Param('mybugstemplate').replace('%userid%', filtered_username) %]">My [% terms.Bugs %]</a></li>
[% print_pipe = 1 %]
[% END %]
[% END %]
[% " <br> " IF print_pipe %]
[% print_pipe = 0 %]
[% FOREACH q = user.queries %]
[% NEXT IF q.userid == user.id %]
[% IF q.link_in_footer %]
[% " | " IF print_pipe %]
<a href="buglist.cgi?cmdtype=dorem&amp;remaction=run&amp;namedcmd=
[% q.name FILTER url_quote %]&amp;sharer_id=
[% q.userid FILTER url_quote %]"
class="shared"
title="Shared by [% q.user.identity FILTER html %]">[% q.name FILTER html FILTER no_break %]</a>
[% print_pipe = 1 %]
[% FOREACH q = user.queries %]
[% NEXT IF q.userid != user.id %]
[% IF q.link_in_footer %]
<li>[% '<span class="separator">| </span>' IF print_pipe %]
<a href="buglist.cgi?cmdtype=runnamed&amp;namedcmd=[% q.name FILTER url_quote %]">[% q.name FILTER html %]</a></li>
[% print_pipe = 1 %]
[% END %]
[% END %]
[% END %]
</div>
</div>
[% new_line = print_pipe %]
[% print_pipe = 0 %]
[% FOREACH q = user.queries %]
[% NEXT IF q.userid == user.id %]
[% IF q.link_in_footer %]
[% IF new_line %]
<br>
[% new_line = 0 %]
[% END %]
<li>
[% '<span class="separator">| </span>' IF print_pipe %]
<a href="buglist.cgi?cmdtype=dorem&amp;remaction=run&amp;namedcmd=
[% q.name FILTER url_quote %]&amp;sharer_id=
[% q.userid FILTER url_quote %]"
class="shared"
title="Shared by [% q.user.identity FILTER html %]">[% q.name FILTER html FILTER no_break %]</a></li>
[% print_pipe = 1 %]
[% END %]
[% END %]
</ul>
</li>
[% END %]
[%# Individual bugs addition %]
@ -113,4 +114,4 @@
[%# Sections of links to more things users can do on this installation. %]
[% Hook.process("end") %]
</div>
</ul>

View File

@ -31,8 +31,8 @@
[% PROCESS global/header.html.tmpl
title = "$terms.Bugzilla Main Page"
h1 = "Main Page"
h3 = "version $constants.BUGZILLA_VERSION"
header = "Main Page"
header_addl_info = "version $constants.BUGZILLA_VERSION"
style_urls = [ 'skins/standard/index.css' ]
onload = 'document.forms[\'f\'].quicksearch.focus();'
%]

View File

@ -31,7 +31,7 @@
[% PROCESS global/header.html.tmpl
title = "$terms.Bugzilla Quip System"
h1 = "Add your own clever headline"
header = "Add your own clever headline"
%]
[% IF added_quip %]

View File

@ -160,14 +160,16 @@
[% tableheader %]
[% END %]
<tr class="bz_[% bug.bug_severity FILTER css_class_quote -%]
<tr class="clickable_area bz_bugitem
bz_[% bug.bug_severity FILTER css_class_quote -%]
bz_[% bug.priority FILTER css_class_quote -%]
bz_[% bug.bug_status FILTER css_class_quote -%]
[%+ "bz_$bug.resolution" FILTER css_class_quote IF bug.resolution -%]
[%+ "bz_secure" IF bug.secure_mode -%]
[%+ "bz_secure_mode_$bug.secure_mode" FILTER css_class_quote IF bug.secure_mode -%]
[%+ count % 2 == 1 ? "bz_row_odd" : "bz_row_even" -%]
">
"
onClick="document.location='show_bug.cgi?id=[% bug.bug_id %]'">
[% IF dotweak %]
@ -176,7 +178,8 @@
</td>
[% END %]
<td class="first-child">
<a href="show_bug.cgi?id=[% bug.bug_id %]">[% bug.bug_id %]</a>
<a name="b[% bug.bug_id %]"
href="show_bug.cgi?id=[% bug.bug_id %]">[% bug.bug_id %]</a>
<span style="display: none">[%+ '[SEC]' IF bug.secure_mode %]</span>
</td>

View File

@ -28,7 +28,7 @@
[% PROCESS global/header.html.tmpl
title = "Chart"
h3 = time2str("%Y-%m-%d %H:%M:%S", time)
header_addl_info = time2str("%Y-%m-%d %H:%M:%S", time)
%]
<div align="center">

View File

@ -20,7 +20,7 @@
#%]
[% title = "Edit Series" %]
[% h2 = BLOCK %]
[% subheader = BLOCK %]
[% default.category FILTER html %] /
[%+ default.subcategory FILTER html %] /
[%+ default.name FILTER html %]

View File

@ -74,7 +74,7 @@
.t4 { background-color: #c3d3ed } /* darker blue */
.ttotal { background-color: #cfffdf } /* light green */
"
h3 = time2str("%Y-%m-%d %H:%M:%S", time)
header_addl_info = time2str("%Y-%m-%d %H:%M:%S", time)
%]
[% IF debug %]

View File

@ -37,7 +37,7 @@ var queryform = "queryform"
[% PROCESS global/header.html.tmpl
title = "Search for $terms.bugs"
h1 = ""
header = ""
onload = "doOnSelectProduct(0); initHelp();"
javascript = js_data
javascript_urls = [ "js/productform.js" ]
@ -46,7 +46,7 @@ var queryform = "queryform"
}"
%]
[% PROCESS search/tabs.html.tmpl %]
[% WRAPPER search/tabs.html.tmpl %]
[% button_name = "Search" %]
@ -84,4 +84,6 @@ var queryform = "queryform"
[% PROCESS "search/search-help.html.tmpl" IF cgi.param("help") %]
[% END %]
[% PROCESS global/footer.html.tmpl %]

View File

@ -23,10 +23,10 @@
[% PROCESS global/header.html.tmpl
title = "Find a Specific " _ terms.Bug
h1 = ""
header = ''
%]
[% PROCESS search/tabs.html.tmpl %]
[% WRAPPER search/tabs.html.tmpl %]
<p>
Find a specific [% terms.bug %] by entering words that describe it.
@ -116,5 +116,7 @@ for "crash secure SSL flash".
</table>
</form>
[% END %]
[% PROCESS global/footer.html.tmpl %]

View File

@ -24,10 +24,14 @@
# This template has no interface.
#%]
[% PROCESS global/tabs.html.tmpl
[% WRAPPER global/tabs.html.tmpl
tabs = [ { name => 'specific', label => "Find a Specific $terms.Bug",
link => "query.cgi?format=specific" },
{ name => 'advanced', label => "Advanced Search",
link => "query.cgi?format=advanced" } ]
current_tab_name = query_format || format || "advanced"
%]
[% content %]
[% END %]