Bug 13540 - allow key terms, like "Bugzilla" and "bug", to be altered without changing all the templates. Patch by jwilmoth@starbucks.com; r=gerv, a=justdave.

This commit is contained in:
gerv%gerv.net 2003-07-03 21:32:13 +00:00
Родитель c8338b2791
Коммит 3316115412
86 изменённых файлов: 1323 добавлений и 1102 удалений

Просмотреть файл

@ -136,6 +136,9 @@ foreach my $path (@Support::Templates::include_paths) {
# Special Template Toolkit loop variable
next if $directive =~ /^loop\.(index|count)$/;
# Branding terms
next if $directive =~ /^terms\./;
# Things which are already filtered
# Note: If a single directive prints two things, and only one is
# filtered, we may not catch that case.

Просмотреть файл

@ -25,6 +25,8 @@
# of the error.
#%]
[% PROCESS global/variables.none.tmpl %]
[% SWITCH auth_err_tag %]
[% CASE "cannot_retreive_attr" %]
The specified LDAP attribute [% info.attr FILTER html %] was not found.
@ -36,12 +38,12 @@
[% END %]
[% CASE "no_userid" %]
Bugzilla created a new account for you, but then could not find the
[% terms.Bugzilla %] created a new account for you, but then could not find the
new userid.
[% CASE "server_not_defined" %]
The LDAP server for authentication has not been defined.
[% CASE %]
Unhandled authentication error: [% auth_err_tag FILTER html %]

Просмотреть файл

@ -22,11 +22,13 @@
[%# INTERFACE:
# target: string. URL to go to after login.
# form: hash; the form values which need to be submitted to the target script
# mform: hash; the form values with multiple values which need to be
# mform: hash; the form values with multiple values which need to be
# submitted to the target script
#%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Login"
%]
@ -68,23 +70,23 @@
[% END %]
</tr>
</table>
[% PROCESS "global/hidden-fields.html.tmpl"
exclude="^Bugzilla_(login|password|restrictlogin)$" %]
<input type="submit" name="GoAheadAndLogIn" value="Login">
</form>
[%# Allow the user to create a new account, or request a token to change
[%# Allow the user to create a new account, or request a token to change
# their password, assuming that our auth method allows that.
#%]
[% IF caneditaccount %]
<hr>
[% IF Param("createemailregexp") %]
<p>
If you don't have a Bugzilla account, you can
If you don't have a [% terms.Bugzilla %] account, you can
<a href="createaccount.cgi">create a new account</a>.
</p>
[% END %]
@ -92,7 +94,7 @@
<form method="get" action="token.cgi">
<input type="hidden" name="a" value="reqpw">
If you have an account, but have forgotten your password,
enter your login name below and submit a request
enter your login name below and submit a request
to change your password.<br>
<input size="35" name="loginname">
<input type="submit" value="Submit Request">

Просмотреть файл

@ -19,16 +19,19 @@
# Contributor(s): John Vandenberg <zeroj@null.net>
# Tobias Burnus <burnus@net-b.de>
#%]
[% PROCESS global/variables.none.tmpl %]
From: bugzilla-admin-daemon
To: [% emailaddress %]
Subject: [% PROCESS subject %]
A request was cancelled from [% remoteaddress %].
If you did not request this, it could be either an honest
mistake or someone attempting to break into your Bugzilla account.
If you did not request this, it could be either an honest
mistake or someone attempting to break into your [% terms.Bugzilla %] account.
Take a look at the information below and forward this email
Take a look at the information below and forward this email
to [% maintainer %] if you suspect foul play.
Token: [% token %]
@ -84,12 +87,12 @@ Cancelled Because:
[% ELSE %]
[%# Give sensible error if the cancel-token function is used incorrectly.
#%]
You are using Bugzilla's cancel-token function incorrectly. You
#%]
You are using [% terms.Bugzilla %]'s cancel-token function incorrectly. You
passed in the string '[% cancelaction %]'. The correct use is to pass
in a tag, and define that tag in the file cancel-token.txt.tmpl.
If you are a Bugzilla end-user seeing this message, please forward this
If you are a [% terms.Bugzilla %] end-user seeing this message, please forward this
email to [% Param('maintainer') %].
[% END %]
[% END %]

Просмотреть файл

@ -19,14 +19,17 @@
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/header.html.tmpl
title = "Create a new Bugzilla account"
%]
[% PROCESS global/variables.none.tmpl %]
[% title = BLOCK %]
Create a new [% terms.Bugzilla %] account
[% END %]
[% PROCESS global/header.html.tmpl %]
<p>
To create a Bugzilla account, all that you need to do is to enter a
To create a [% terms.Bugzilla %] account, all that you need to do is to enter a
legitimate e-mail address. The account will be created, and its
password will be mailed to you. Optionally you may enter your real name
password will be mailed to you. Optionally you may enter your real name
as well.
</p>
@ -41,7 +44,7 @@
[% Param('emailsuffix') FILTER html %]
</td>
</tr>
<tr>
<td align="right">
<b>Real name:</b>
@ -55,4 +58,4 @@
<input type="submit" value="Create Account">
</form>
[% PROCESS global/footer.html.tmpl %]
[% PROCESS global/footer.html.tmpl %]

Просмотреть файл

@ -18,12 +18,15 @@
#
# Contributor(s): John Vandenberg <zeroj@null.net>
#%]
[% PROCESS global/variables.none.tmpl %]
[% expiration_ts = token_ts + (max_token_age * 86400) %]
From: bugzilla-admin-daemon
To: [% emailaddress %]
Subject: Bugzilla Change Email Address Request
Subject: [% terms.Bugzilla %] Change Email Address Request
Bugzilla has received a request to change the email address
[% terms.Bugzilla %] has received a request to change the email address
for the [% oldemailaddress %] account to your address.
To confirm the change, visit the following link:
@ -35,5 +38,5 @@ this request, visit the following link:
[% Param('urlbase') %]token.cgi?a=cxlem&t=[% token FILTER url_quote %]
If you do nothing, the request will lapse after
If you do nothing, the request will lapse after
[%- max_token_age %] days ([% time2str("%H:%M on the %o of %B, %Y", expiration_ts) %]).

Просмотреть файл

@ -23,15 +23,18 @@
# newemailaddress: string. The user's new Bugzilla login email address.
# token: string. The token associated with this change.
#%]
[% PROCESS global/variables.none.tmpl %]
[% expiration_ts = token_ts + (max_token_age * 86400) %]
From: bugzilla-admin-daemon
To: [% emailaddress %]
Subject: Bugzilla Change Email Address Request
Subject: [% terms.Bugzilla %] Change Email Address Request
Importance: High
X-MSMail-Priority: High
X-Priority: 1
Bugzilla has received a request to change the email address
[% terms.Bugzilla %] has received a request to change the email address
for your account to [% newemailaddress %].
If you are not the person who made this request, or you wish to cancel
@ -39,6 +42,6 @@ this request, visit the following link:
[% Param('urlbase') %]token.cgi?a=cxlem&t=[% token FILTER url_quote %]
If you do nothing, and [% newemailaddress %] confirms this request, the
change will be made permanent after
If you do nothing, and [% newemailaddress %] confirms this request, the
change will be made permanent after
[%- max_token_age %] days ([% time2str("%H:%M on the %o of %B, %Y", expiration_ts) %]).

Просмотреть файл

@ -23,15 +23,17 @@
# login: string. The user's Bugzilla login email address.
#%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Account Exists"
%]
<form method="get" action="token.cgi">
<input type="hidden" name="a" value="reqpw">
<input type="hidden" name="loginname" value="[% login FILTER html %]">
A Bugzilla account for <tt>[% login FILTER html %]</tt> already exists. If you
are the account holder and have forgotten your password,
A [% terms.Bugzilla %] account for <tt>[% login FILTER html %]</tt> already exists. If you
are the account holder and have forgotten your password,
<input type="submit" value="submit a request to change it">.
</form>

Просмотреть файл

@ -18,13 +18,16 @@
#
# Contributor(s): John Vandenberg <zeroj@null.net>
#%]
[% PROCESS global/variables.none.tmpl %]
[% expiration_ts = token_ts + (max_token_age * 86400) %]
From: bugzilla-admin-daemon
To: [% emailaddress %]
Subject: Bugzilla Change Password Request
Subject: [% terms.Bugzilla %] Change Password Request
You (or someone impersonating you) has requested to change your Bugzilla
password. To change your password, visit the following link:
You (or someone impersonating you) has requested to change your [% terms.Bugzilla %]
&nbsp;password. To change your password, visit the following link:
[%+ Param('urlbase') %]token.cgi?a=cfmpw&t=[% token FILTER url_quote %]
@ -33,6 +36,6 @@ this request, visit the following link:
[%+ Param('urlbase') %]token.cgi?a=cxlpw&t=[% token FILTER url_quote %]
If you do nothing, the request will lapse after
[%- max_token_age %] days
If you do nothing, the request will lapse after
[%- max_token_age %] days
([% time2str("%H:%M on the %o of %B, %Y", expiration_ts) -%]) or when you log in successfully.

Просмотреть файл

@ -21,19 +21,21 @@
#%]
[%# INTERFACE:
# watchedusers: string.
# watchedusers: string.
# Comma-separated list of email addresses this user watches.
# excludeself: boolean.
# True if user is not receiving self-generated mail.
# <rolename>: Multiple hashes, one for each rolename (e.g. owner; see
# below), keyed by reasonname (e.g. comments; again, see
# below). The value is a boolean - true if the user is
# <rolename>: Multiple hashes, one for each rolename (e.g. owner; see
# below), keyed by reasonname (e.g. comments; again, see
# below). The value is a boolean - true if the user is
# receiving mail for that reason when in that role.
# Also references the 'supportwatchers' Param.
#%]
[% PROCESS global/variables.none.tmpl %]
[% useqacontact = Param('useqacontact') %]
<table>
[% IF Param('supportwatchers') %]
<tr>
@ -45,8 +47,8 @@
<tr>
<td colspan="4">
If you want to help cover for someone when they're on vacation, or if
you need to do the QA related to all of their bugs, you can tell
Bugzilla to send mail related to their bugs to you also. List the
you need to do the QA related to all of their [% terms.bugs %], you can tell
[% terms.Bugzilla %] to send mail related to their [% terms.bugs %] to you also. List the
email addresses of any users you wish to watch here, separated by
commas.
</td>
@ -64,7 +66,7 @@
<td colspan="2">
<p>
If you don't like getting a notification for "trivial"
changes to bugs, you can use the settings below to
changes to [% terms.bugs %], you can use the settings below to
filter some (or even all) notifications.
</p>
</td>
@ -138,7 +140,7 @@ document.write('<input type="button" value="Disable All Mail" onclick="SetCheckb
<table width="100%" border="1">
<tr>
<td colspan="[% useqacontact ? '5' : '4' %]" align="center" width="50%">
<b>When my relationship to this bug is:</b>
<b>When my relationship to this [% terms.bug %] is:</b>
</td>
<td rowspan="2" width="50%">
<b>I want to receive mail when:</b>
@ -165,28 +167,32 @@ document.write('<input type="button" value="Disable All Mail" onclick="SetCheckb
</td>
</tr>
[% FOREACH reason = [
{ name = 'Removeme',
description = 'I\'m added to or removed from this capacity' },
{ name = 'Comments',
description = 'New Comments are added' },
{ name = 'Attachments',
description = 'New Attachments are added' },
{ name = 'Status',
description = 'Priority, status, severity, and/or milestone changes' },
{ name = 'Resolved',
description = 'The bug is resolved or verified' },
{ name = 'Keywords',
description = 'Keywords field changes' },
{ name = 'CC',
description = 'CC field changes' },
{ name = 'Other',
description = 'Any field not mentioned above changes' },
{ name = 'Unconfirmed',
description = 'The bug is in the unconfirmed state' },
[% bugLabelLower = BLOCK %]
[% terms.bug %]
[% END %]
[% FOREACH reason = [
{ name = 'Removeme',
description = "I'm added to or removed from this capacity" },
{ name = 'Comments',
description = "New Comments are added" },
{ name = 'Attachments',
description = "New Attachments are added" },
{ name = 'Status',
description = "Priority, status, severity, and/or milestone changes" },
{ name = 'Resolved',
description = "The ${bugLabelLower} is resolved or verified" },
{ name = 'Keywords',
description = "Keywords field changes" },
{ name = 'CC',
description = "CC field changes" },
{ name = 'Other',
description = "Any field not mentioned above changes" },
{ name = 'Unconfirmed',
description = "The ${bugLabelLower} is in the unconfirmed state" },
] %]
<tr>
[% FOREACH role = [ "Reporter", "Owner", "QAcontact", "CClist", "Voter" ]
[% FOREACH role = [ "Reporter", "Owner", "QAcontact", "CClist", "Voter" ]
%]
[% NEXT IF role == "QAcontact" AND NOT useqacontact %]
<td align="center">
@ -199,6 +205,6 @@ document.write('<input type="button" value="Disable All Mail" onclick="SetCheckb
</td>
</tr>
[% END %]
</table>
</table>
<br>

Просмотреть файл

@ -20,25 +20,27 @@
#%]
[%# INTERFACE:
# mybugslink: boolean. True if the user wishes the My Bugs link to appear.
# mybugslink: boolean. True if the user wishes the My Bugs link to appear.
# queries: array of hashes. May be empty. Each hash has two members:
# name: string. The name of the query.
# footer: boolean. True if the query appears in the footer.
#%]
[% PROCESS global/variables.none.tmpl %]
<table>
<tr>
<th align="right">The 'My bugs' link:</th>
<th align="right">The 'My [% terms.bugs %]' link:</th>
<td>
<select name="mybugslink">
<option value="1">should appear on the footer of every page</option>
<option value="0"
<option value="1">should appear on the footer of every page</option>
<option value="0"
[% " selected" IF NOT mybugslink %]>should not be displayed
</option>
</option>
</select>
</td>
</tr>
</tr>
<input type="hidden" name="numqueries" value="[% queries.size %]">
[% IF queries.size %]
[% FOREACH query = queries %]
@ -46,31 +48,31 @@
<th align="right">Your query named '[% query.name FILTER html %]':</th>
<td>
<select name="query-[% loop.index %]">
<option value="0">should only appear in the query page</option>
<option value="1"
<option value="0">should only appear in the query page</option>
<option value="1"
[% " selected" IF query.footer %]>
should appear on the footer of every page
</option>
</option>
</select>
</td>
</tr>
<input type="hidden" name="name-[% loop.index %]"
<input type="hidden" name="name-[% loop.index %]"
value="[% query.name FILTER html %]">
[% END %]
[% ELSE %]
<tr>
<td colspan="4">
<br>
If you create remembered queries using the
<br>
If you create remembered queries using the
<a href="query.cgi">query page</a>,
you can then come to this page and choose to have some of them
appear in the footer of each Bugzilla page.
you can then come to this page and choose to have some of them
appear in the footer of each [% terms.Bugzilla %] page.
<br>
<br>
</td>
</tr>
[% END %]
</table>

Просмотреть файл

@ -21,20 +21,22 @@
[%# INTERFACE:
# has_bits: array of hashes. May be empty.
# name => Names of the permissions the user has.
# desc => Descriptions of the permissions the user has.
# set_bits: array of hashes. May be empty.
# name => Names of the permissions the user can set for
# name => Names of the permissions the user has.
# desc => Descriptions of the permissions the user has.
# set_bits: array of hashes. May be empty.
# name => Names of the permissions the user can set for
# other people.
# desc => Descriptions of the permissions the user can set for
# desc => Descriptions of the permissions the user can set for
# other people.
#%]
[% PROCESS global/variables.none.tmpl %]
<table align="center">
<tr>
<td>
[% IF has_bits.size %]
You have the following permission bits set on your account:
You have the following permission [% terms.bits %] set on your account:
<p>
<br>
<table align="center">
@ -46,16 +48,16 @@
[% END %]
</table>
[% ELSE %]
There are no permission bits set on your account.
There are no permission [% terms.bits %] set on your account.
[% END %]
[% IF user.groups.editusers %]
<br>
You have editusers privileges. You can turn on and off
You have editusers privileges. You can turn on and off
all permissions for all users.
[% ELSIF set_bits.size %]
<br>
And you can turn on or off the following bits for
And you can turn on or off the following [% terms.bits %] for
<a href="editusers.cgi">other users</a>:
<p>
<table align="center">

Просмотреть файл

@ -19,20 +19,22 @@
# Contributor(s): Myk Melez <myk@mozilla.org>
#%]
[% PROCESS global/variables.none.tmpl %]
[%# Filter off the name here to be used multiple times below %]
[% name = BLOCK %][% flag_type.name FILTER html %][% END %]
[% PROCESS global/header.html.tmpl
title = "Confirm Deletion of Flag Type '$name'"
[% PROCESS global/header.html.tmpl
title = "Confirm Deletion of Flag Type '$name'"
%]
<p>
There are [% flag_count %] flags of type [% name %].
If you delete this type, those flags will also be deleted. Note that
instead of deleting the type you can
There are [% flag_count %] flags of type [% name %].
If you delete this type, those flags will also be deleted. Note that
instead of deleting the type you can
<a href="editflagtypes.cgi?action=deactivate&amp;id=[% flag_type.id %]">deactivate it</a>,
in which case the type and its flags will remain in the database
but will not appear in the Bugzilla UI.
but will not appear in the [% terms.Bugzilla %] UI.
</p>
<table>

Просмотреть файл

@ -19,6 +19,8 @@
# Contributor(s): Myk Melez <myk@mozilla.org>
#%]
[% PROCESS global/variables.none.tmpl %]
[%# The javascript and header_html blocks get used in header.html.tmpl. %]
[% javascript = BLOCK %]
var usetms = 0; // do we have target milestone?
@ -26,7 +28,7 @@
var last_sel = []; // caches last selection
var cpts = new Array();
[% FOREACH p = products %]
cpts['[% p FILTER js %]'] = [
cpts['[% p FILTER js %]'] = [
[%- FOREACH item = components_by_product.$p %]'[% item FILTER js %]'[% ", " UNLESS loop.last %] [%- END -%] ];
[% END %]
[% END %]
@ -36,9 +38,13 @@
[% END %]
[% IF type.target_type == "bug" %]
[% title = "Create Flag Type for Bugs" %]
[% title = BLOCK %]Create Flag Type for [% terms.Bugs %][% END %]
[% typeLabelLowerPlural = BLOCK %][% terms.bugs %][% END %]
[% typeLabelLowerSingular = BLOCK %][% terms.bug %][% END %]
[% ELSE %]
[% title = "Create Flag Type for Attachments" %]
[% typeLabelLowerPlural = BLOCK %]attachments[% END %]
[% typeLabelLowerSingular = BLOCK %]attachment[% END %]
[% END %]
[% IF last_action == "copy" %]
@ -47,7 +53,7 @@
[% title = "Edit Flag Type $type.name" %]
[% END %]
[% PROCESS global/header.html.tmpl
[% PROCESS global/header.html.tmpl
title = title
style = "
table#form th { text-align: right; vertical-align: baseline; white-space: nowrap; }
@ -66,13 +72,13 @@
[% FOREACH category = type.exclusions %]
<input type="hidden" name="exclusions" value="[% category %]">
[% END %]
<table id="form" cellspacing="0" cellpadding="4" border="0">
<tr>
<th>Name:</th>
<td>
a short name identifying this type<br>
<input type="text" name="name" value="[% type.name FILTER html %]"
<input type="text" name="name" value="[% type.name FILTER html %]"
size="50" maxlength="50">
</td>
</tr>
@ -84,12 +90,13 @@
<textarea name="description" rows="4" cols="80">[% type.description FILTER html %]</textarea>
</td>
</tr>
<tr>
<th>Category:</th>
<td>
the products/components to which [% type.target_type %]s must
(inclusions) or must not (exclusions) belong in order for users
the products/components to which [% typeLabelLowerPlural %] must
(inclusions) or must not (exclusions) belong in order for users
to be able to set flags of this type for them
<table>
<tr>
@ -124,11 +131,11 @@
</table>
</td>
</tr>
<tr>
<th>Sort Key:</th>
<td>
a number between 1 and 32767 by which this type will be sorted
a number between 1 and 32767 by which this type will be sorted
when displayed to users in a list; ignore if you don't care
what order the types appear in or if you want them to appear
in alphabetical order<br>
@ -147,7 +154,7 @@
<tr>
<th>&nbsp;</th>
<td>
<input type="checkbox" name="is_requestable" [% "checked" IF type.is_requestable || !type.is_requestable.defined %]>
<input type="checkbox" name="is_requestable" [% "checked" IF type.is_requestable || !type.is_requestable.defined %]>
requestable (users can ask for flags of this type to be set)
</td>
</tr>
@ -159,11 +166,11 @@
<input type="text" name="cc_list" value="[% type.cc_list FILTER html %]" size="80" maxlength="200">
</td>
</tr>
<tr>
<th>&nbsp;</th>
<td>
<input type="checkbox" name="is_requesteeble" [% "checked" IF type.is_requesteeble || !type.is_requesteeble.defined %]>
<input type="checkbox" name="is_requesteeble" [% "checked" IF type.is_requesteeble || !type.is_requesteeble.defined %]>
specifically requestable (users can ask specific other users to set flags of this type as opposed to just asking the wind)
</td>
</tr>
@ -172,7 +179,7 @@
<th>&nbsp;</th>
<td>
<input type="checkbox" name="is_multiplicable" [% "checked" IF type.is_multiplicable || !type.is_multiplicable.defined %]>
multiplicable (multiple flags of this type can be set on the same [% type.target_type %])
multiplicable (multiple flags of this type can be set on the same [% typeLabelLowerSingular %])
</td>
</tr>

Просмотреть файл

@ -19,7 +19,9 @@
# Contributor(s): Myk Melez <myk@mozilla.org>
#%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = 'Administer Flag Types'
style = "
table#flag_types tr th { text-align: left; }
@ -28,7 +30,7 @@
%]
<p>
Flags are markers that identify whether a bug or attachment has been granted
Flags are markers that identify whether [% terms.abug %] or attachment has been granted
or denied some status. Flags appear in the UI as a name and a status symbol
("+" for granted, "-" for denied, and "?" for statuses requested by users).
</p>
@ -40,13 +42,13 @@
either the string "review+" or the string "review-" will appear in the patch,
depending on whether the patch passed or failed review.
</p>
<h3>Flag Types for Bugs</h3>
<h3>Flag Types for [% terms.Bugs %]</h3>
[% PROCESS display_flag_types types=bug_types %]
<p>
<a href="editflagtypes.cgi?action=enter&amp;target_type=bug">Create Flag Type for Bugs</a>
<a href="editflagtypes.cgi?action=enter&amp;target_type=bug">Create Flag Type for [% terms.Bugs %]</a>
</p>
<h3>Flag Types for Attachments</h3>
@ -63,8 +65,8 @@
{
if (count > 0) {
var msg = 'There are ' + count + ' flags of type ' + name + '. ' +
'If you delete this type, those flags will also be ' +
'deleted.\n\nNote: to deactivate the type instead ' +
'If you delete this type, those flags will also be ' +
'deleted.\n\nNote: to deactivate the type instead ' +
'of deleting it, edit it and uncheck its "is active" ' +
'flag.\n\nDo you really want to delete this flag type?';
if (!confirm(msg)) return false;
@ -95,12 +97,12 @@
<td>[% type.description FILTER html %]</td>
<td>
<a href="editflagtypes.cgi?action=copy&amp;id=[% type.id %]">Copy</a>
| <a href="editflagtypes.cgi?action=confirmdelete&amp;id=[% type.id %]"
onclick="return confirmDelete([% type.id %], '[% type.name FILTER js %]',
| <a href="editflagtypes.cgi?action=confirmdelete&amp;id=[% type.id %]"
onclick="return confirmDelete([% type.id %], '[% type.name FILTER js %]',
[% type.flag_count %]);">Delete</a>
</td>
</tr>
[% END %]
</table>

Просмотреть файл

@ -17,29 +17,30 @@
# Rights Reserved.
#
# Contributor(s): Joel Peshkin <bugreport@peshkin.net>
#
#
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl title="Confirm Group Control Change for product \'$product\'" %]
[% FOREACH group = mandatory_groups %]
<P>
group '[% group.name FILTER html %]' impacts [% group.count %] bugs for which the group is
newly mandatory and will be added.
group '[% group.name FILTER html %]' impacts [% group.count %]&nbsp;[% terms.bugs %] for
which the group is newly mandatory and will be added.
[% END %]
[% FOREACH group = na_groups %]
<P>
group '[% group.name FILTER html %]' impacts [% group.count %] bugs for which the group is no longer applicable and will be removed.
[% END %]
group '[% group.name FILTER html %]' impacts [% group.count %]&nbsp;
[% terms.bugs %] for which the group is no longer applicable and will
be removed.[% END %]
<form method="post" >
[% PROCESS "global/hidden-fields.html.tmpl" exclude="^Bugzilla_(login|password)$" %]
<br>
Click "Continue" to proceed with the change including the changes
Click "Continue" to proceed with the change including the changes
indicated above. If you do not want these changes, use "back" to
return to the previous page.
<p>

Просмотреть файл

@ -19,16 +19,17 @@
# Contributor(s): Joel Peshkin <bugreport@peshkin.net>
#%]
[% PROCESS global/variables.none.tmpl %]
[% filt_product = product FILTER html %]
[% PROCESS global/header.html.tmpl
[% PROCESS global/header.html.tmpl
title = "Edit Group Controls for '$filt_product'"
%]
<form method="post" action="editproducts.cgi">
<input type="hidden" name="action" value="updategroupcontrols">
<input type="hidden" name="product" value="[% filt_product %]">
<table id="form" cellspacing="0" cellpadding="4" border="1">
<tr bgcolor="#6666ff">
<th>Group</th>
@ -36,7 +37,7 @@
<th>MemberControl</th>
<th>OtherControl</th>
<th>Canedit</th>
<th>Bugs</th>
<th>[% terms.Bugs %]</th>
</tr>
[% FOREACH group = groups %]
[% IF group.isactive == 0 AND group.bugcount > 0 %]
@ -63,22 +64,22 @@
<td>
<select name="membercontrol_[% group.id %]">
<option value=[% const.CONTROLMAPNA %]
[% " selected=\"selected\""
[% " selected=\"selected\""
IF group.membercontrol == const.CONTROLMAPNA %]
>NA
</option>
<option value=[% const.CONTROLMAPSHOWN %]
[% " selected=\"selected\""
[% " selected=\"selected\""
IF group.membercontrol == const.CONTROLMAPSHOWN %]
>Shown
</option>
<option value=[% const.CONTROLMAPDEFAULT %]
[% " selected=\"selected\""
[% " selected=\"selected\""
IF group.membercontrol == const.CONTROLMAPDEFAULT %]
>Default
</option>
<option value=[% const.CONTROLMAPMANDATORY %]
[% " selected=\"selected\""
[% " selected=\"selected\""
IF group.membercontrol == const.CONTROLMAPMANDATORY %]
>Mandatory
</option>
@ -87,22 +88,22 @@
<td>
<select name="othercontrol_[% group.id %]">
<option value=[% const.CONTROLMAPNA %]
[% " selected=\"selected\""
[% " selected=\"selected\""
IF group.othercontrol == const.CONTROLMAPNA %]
>NA
</option>
<option value=[% const.CONTROLMAPSHOWN %]
[% " selected=\"selected\""
[% " selected=\"selected\""
IF group.othercontrol == const.CONTROLMAPSHOWN %]
>Shown
</option>
<option value=[% const.CONTROLMAPDEFAULT %]
[% " selected=\"selected\""
[% " selected=\"selected\""
IF group.othercontrol == const.CONTROLMAPDEFAULT %]
>Default
</option>
<option value=[% const.CONTROLMAPMANDATORY %]
[% " selected=\"selected\""
[% " selected=\"selected\""
IF group.othercontrol == const.CONTROLMAPMANDATORY %]
>Mandatory
</option>
@ -131,7 +132,7 @@ These settings control the relationship of the groups to this
product.
<p>
If any group has <b>Entry</b> selected, then this product will
restrict bug entry to only those users who are members of all the
restrict [% terms.bug %] entry to only those users who are members of all the
groups with entry selected.
<p>
If any group has <b>Canedit</b> selected, then this product
@ -141,7 +142,7 @@ all the canedit groups will be able to edit. This is an additional
restriction that further restricts what can be edited by a user.
<p>
The <b>MemberControl</b> and <b>OtherControl</b> fields
indicate which bugs will be placed in
indicate which [% terms.bugs %] will be placed in
this group according to the following definitions.
<br>
<table border=1>
@ -164,7 +165,7 @@ this group according to the following definitions.
NA
</td>
<td>
Bugs in this product are never associated with this group.
[% terms.Bugs %] in this product are never associated with this group.
</td>
</tr>
<tr>
@ -175,9 +176,9 @@ this group according to the following definitions.
NA
</td>
<td>
Bugs in this product are permitted to be restricted to this
group. Users who are a member of this group will be able
to place bugs in this group.
[% terms.Bugs %] in this product are permitted to be restricted to this
group. Users who are a member of this group will be able to place [% terms.bugs %] in
this group.
</td>
</tr>
<tr>
@ -188,8 +189,8 @@ this group according to the following definitions.
Shown
</td>
<td>
Bugs in this product can be placed in this group by anyone
with permission to edit the bug even if they are not a member
[% terms.Bugs %] in this product can be placed in this group by anyone
with permission to edit the [% terms.bug %] even if they are not a member
of this group.
</td>
</tr>
@ -201,9 +202,9 @@ this group according to the following definitions.
Default
</td>
<td>
Bugs in this product can be placed in this group by anyone
with permission to edit the bug even if they are not a member
of this group. Non-members place bugs in this group by default.
[% terms.Bugs %] in this product can be placed in this group by anyone
with permission to edit the [% terms.bug %] even if they are not a member
of this group. Non-members place [% terms.bugs %] in this group by default.
</td>
</tr>
<tr>
@ -214,11 +215,10 @@ this group according to the following definitions.
Mandatory
</td>
<td>
Bugs in this product are permitted to be restricted to this
group. Users who are a member of this group will be able
to place bugs in this group.
Non-members will be forced to restrict bugs to this group
when they initially enter a bug in this product.
[% terms.Bugs %] in this product are permitted to be restricted to this
group. Users who are a member of this group will be able to place [% terms.bugs %]
in this group. Non-members will be forced to restrict [% terms.bugs %] to
this group when they initially enter [% terms.abug %] in this product.
</td>
</tr>
<tr>
@ -229,10 +229,9 @@ this group according to the following definitions.
NA
</td>
<td>
Bugs in this product are permitted to be restricted to this
group and are placed in this group by default.
Users who are a member of this group will be able
to place bugs in this group.
[% terms.Bugs %] in this product are permitted to be restricted to this
group and are placed in this group by default. Users who are a member of this
group will be able to place [% terms.bugs %] in this group.
</td>
</tr>
<tr>
@ -243,11 +242,10 @@ this group according to the following definitions.
Default
</td>
<td>
Bugs in this product are permitted to be restricted to this
group and are placed in this group by default.
Users who are a member of this group will be able
to place bugs in this group. Non-members will be able to
restrict bugs to this group on entry and will do so by default
[% terms.Bugs %] in this product are permitted to be restricted to this
group and are placed in this group by default. Users who are a member of this group
will be able to place [% terms.bugs %] in this group. Non-members will be
able to restrict [% terms.bugs %] to this group on entry and will do so by default
</td>
</tr>
<tr>
@ -258,11 +256,10 @@ this group according to the following definitions.
Mandatory
</td>
<td>
Bugs in this product are permitted to be restricted to this
group and are placed in this group by default.
Users who are a member of this group will be able
to place bugs in this group. Non-members will be forced
to place bugs in this group on entry.
[% terms.Bugs %] in this product are permitted to be restricted to this
group and are placed in this group by default. Users who are a member of this group
will be able to place [% terms.bugs %] in this group. Non-members will be forced
to place [% terms.bugs %] in this group on entry.
</td>
</tr>
<tr>
@ -273,7 +270,7 @@ this group according to the following definitions.
Mandatory
</td>
<td>
Bugs in this product are required to be restricted to this
[% terms.Bugs %] in this product are required to be restricted to this
group. Users are not given any option.
</td>
</tr>

Просмотреть файл

@ -19,13 +19,15 @@
# Contributor(s): Myk Melez <myk@mozilla.org>
#%]
[% PROCESS global/variables.none.tmpl %]
[%# Define strings that will serve as the title and header of this page %]
[% title = BLOCK %]Create New Attachment for Bug #[% bugid %][% END %]
[% title = BLOCK %]Create New Attachment for [% terms.Bug %] #[% bugid %][% END %]
[% h1 = BLOCK %]Create New Attachment for
[%+ GetBugLink(bugid, "Bug $bugid") %][% END %]
[%+ GetBugLink(bugid, "$terms.Bug $bugid") %][% END %]
[% h2 = BLOCK %][% bugsummary FILTER html %][% END %]
[% PROCESS global/header.html.tmpl
[% PROCESS global/header.html.tmpl
title = title
h1 = h1
h2 = h2
@ -48,7 +50,7 @@
<form name="entryform" method="post" action="attachment.cgi" enctype="multipart/form-data">
<input type="hidden" name="bugid" value="[% bugid %]">
<input type="hidden" name="action" value="insert">
<table class="attachment_entry">
<tr>
<th>File:</th>
@ -74,15 +76,15 @@
<td>
<em>If the attachment is a patch, check the box below.</em><br>
<input type="checkbox" id="ispatch" name="ispatch" value="1"
onchange="setContentTypeDisabledState();">
onchange="setContentTypeDisabledState();">
<label for="ispatch">patch</label><br><br>
<em>Otherwise, choose a method for determining the content type.</em><br>
<input type="radio" id="autodetect"
name="contenttypemethod" value="autodetect">
name="contenttypemethod" value="autodetect">
<label for="autodetect">auto-detect</label><br>
<input type="radio" id="list"
name="contenttypemethod" value="list">
name="contenttypemethod" value="list">
<label for="list">select from list:</label>
<select name="contenttypeselection"
onchange="this.form.contenttypemethod[1].checked = true;">
@ -128,17 +130,17 @@
<tr>
<th>Reassignment:</th>
<td>
<em>If you want to assign this bug to yourself,
<em>If you want to assign this [% terms.bug %] to yourself,
check the box below.</em><br>
<input type="checkbox" id="takebug" name="takebug" value="1">
<label for="takebug">take bug</label>
<input type="checkbox" id="takebug" name="takebug" value="1">
<label for="takebug">take [% terms.bug %]</label>
</td>
</tr>
[% END %]
<tr>
<th>Comment:</th>
<td>
<em>(optional) Add a comment about this attachment to the bug.</em><br>
<em>(optional) Add a comment about this attachment to the [% terms.bug %].</em><br>
<textarea wrap="soft" name="comment" rows="6" cols="80"></textarea>
</td>
</tr>
@ -152,12 +154,12 @@
<script language="JavaScript" type="text/javascript">
<!--
function setContentTypeDisabledState()
function setContentTypeDisabledState()
{
var entryform = document.entryform;
var isdisabled = false;
if (entryform.ispatch.checked)
if (entryform.ispatch.checked)
isdisabled = true;
for (var i=0 ; i<entryform.contenttypemethod.length ; i++)

Просмотреть файл

@ -27,8 +27,10 @@
# contenttypemethod: string. How we got the content type of the attachment.
# Possible values: autodetect, list, manual.
#%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Changes Submitted"
style = "th { text-align: left; }"
%]
@ -37,29 +39,30 @@
<tr>
<td>
<h2>
<a title="[% description FILTER html %]" href="attachment.cgi?id=[% attachid %]&amp;action=edit">Attachment #[% attachid %]</a>
to <a href="show_bug.cgi?id=[% bugid %]">Bug #[% bugid %]</a> Created
<a title="[% description FILTER html %]" href="attachment.cgi?id=[% attachid %]&amp;action=edit">Attachment #[% attachid %]</a>
to <a href="show_bug.cgi?id=[% bugid %]">[% terms.Bug %] #[% bugid %]</a> Created
</h2>
[% PROCESS "bug/process/bugmail.html.tmpl" mailing_bugid = bugid %]
[% IF contenttypemethod == 'autodetect' %]
<p>
<b>Note:</b> Bugzilla automatically detected the content type
<em>[% contenttype %]</em> for this attachment. If this is
incorrect, correct the value by
<b>Note:</b> [% terms.Bugzilla %] automatically detected the content type
<em>[% contenttype %]</em> for this attachment. If this is
incorrect, correct the value by
<a href="attachment.cgi?id=[% attachid %]&amp;action=edit">editing the attachment</a>.
</p>
[% END %]
</td>
<td>
<a href="show_bug.cgi?id=[% bugid %]">Go back to bug #[% bugid %]</a>
<a href="show_bug.cgi?id=[% bugid %]">Go back to [% terms.bug %] #[% bugid %]</a>
</td>
</tr>
</table>
<p>
<a href="attachment.cgi?bugid=[% bugid %]&amp;action=enter">Create Another Attachment to Bug #[% bugid %]</a>
<a href="attachment.cgi?bugid=[% bugid %]&amp;action=enter">Create
Another Attachment to [% terms.Bug %] #[% bugid %]</a>
</p>
[% PROCESS global/footer.html.tmpl %]

Просмотреть файл

@ -19,13 +19,15 @@
# Contributor(s): Myk Melez <myk@mozilla.org>
#%]
[% PROCESS global/variables.none.tmpl %]
[%# Define strings that will serve as the title and header of this page %]
[% title = BLOCK %]Edit Attachment #[% attachid %] for Bug #[% bugid %][% END %]
[% title = BLOCK %]Edit Attachment #[% attachid %] for [% terms.Bug %] #[% bugid %][% END %]
[% h1 = BLOCK %]Edit Attachment #[% attachid %] for
[%+ GetBugLink(bugid, "Bug $bugid") %][% END %]
[%+ GetBugLink(bugid, "$terms.Bugs $bugid") %][% END %]
[% h2 = BLOCK %][% bugsummary FILTER html %][% END %]
[% PROCESS global/header.html.tmpl
[% PROCESS global/header.html.tmpl
title = title
h1 = h1
h2 = h2
@ -33,7 +35,7 @@
table.attachment_info th { text-align: right; vertical-align: top; }
table.attachment_info td { text-align: left; vertical-align: top; }
#noview { text-align: left; vertical-align: center; }
table#flags th, table#flags td { font-size: small; vertical-align: baseline; text-align: left; }
"
%]
@ -161,7 +163,7 @@
<b>MIME Type:</b><br>
<input type="text" size="20" name="contenttypeentry" value="[% contenttype FILTER html %]"><br>
<input type="checkbox" id="ispatch" name="ispatch" value="1"
[% 'checked="checked"' IF ispatch %]>
<label for="ispatch">patch</label>
@ -176,9 +178,9 @@
[% IF flag_types.size > 0 %]
[% PROCESS "flag/list.html.tmpl" bug_id=bugid attach_id=attachid %]<br>
[% END %]
<div id="smallCommentFrame">
<b>Comment (on the bug):</b><br>
<b>Comment (on the [% terms.bug %]):</b><br>
<textarea name="comment" rows="5" cols="25" wrap="soft"></textarea><br>
</div>
@ -217,7 +219,7 @@
</table>
Attachments on this Bug:
Attachments on this [% terms.Bug %]:
[% FOREACH a = attachments %]
[% IF a == attachid %]
#[% a %]

Просмотреть файл

@ -19,11 +19,12 @@
# Contributor(s): Myk Melez <myk@mozilla.org>
#%]
[% PROCESS global/variables.none.tmpl %]
[% filtered_summary = bugsummary FILTER html %]
[% h1 = BLOCK %]View All Attachments for
[%+ GetBugLink(bugid, "Bug $bugid") %][% END %]
[% PROCESS global/header.html.tmpl
title = "View All Attachments for Bug #$bugid"
[%+ GetBugLink(bugid, "$terms.Bug $bugid") %][% END %]
[% PROCESS global/header.html.tmpl
title = "View All Attachments for $terms.Bug #$bugid"
h1 = h1
h2 = filtered_summary
style = "
@ -73,7 +74,7 @@
</td>
<td valign="top">
<a href="attachment.cgi?id=[% a.attachid %]&amp;action=edit">Edit</a>
<a href="attachment.cgi?id=[% a.attachid %]&amp;action=edit">Edit</a>
</td>
</tr>
</table>

Просмотреть файл

@ -24,8 +24,10 @@
# bugid: integer. ID of the bug we are updating.
# attachid: integer. ID of the attachment we just attached.
#%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Changes Submitted"
style = "th { text-align: left; }"
%]
@ -35,15 +37,15 @@
<table border="1">
<tr>
<td>
<h2>Changes to
<h2>Changes to
<a href="attachment.cgi?id=[% attachid %]&amp;action=edit">attachment [% attachid %]</a>
of bug [% bugid %] submitted
of [% terms.bug %]&nbsp;[% bugid %] submitted
</h2>
[% PROCESS "bug/process/bugmail.html.tmpl" mailing_bugid = bugid %]
</td>
<td>
<a href="show_bug.cgi?id=[% bugid %]">Back to Bug #[% bugid %]</a>
<a href="show_bug.cgi?id=[% bugid %]">Back to [% terms.Bug %] #[% bugid %]</a>
</td>
</tr>
</table>

Просмотреть файл

@ -25,11 +25,13 @@
# This template also needs to be called with the interface to the
# activity.html.tmpl template fulfilled.
#%]
[% PROCESS global/header.html.tmpl
title = "Changes made to bug $bug_id"
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Changes made to $terms.bug $bug_id"
h1 = "Activity log"
h2 = "Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
h2 = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
%]
<br>
@ -37,7 +39,7 @@
[% PROCESS bug/activity/table.html.tmpl %]
<p>
<a href="show_bug.cgi?id=[% bug_id %]">Back to bug [% bug_id %]</a>
<a href="show_bug.cgi?id=[% bug_id %]">Back to [% terms.bug %]&nbsp;[% bug_id %]</a>
</p>
[% PROCESS global/footer.html.tmpl %]

Просмотреть файл

@ -23,7 +23,7 @@
# operations: array of hashes. May be empty. Each has has three members:
# who: string. who performed the operation
# when: string. when they performed it
# changes: hash. Details of what they changed. This hash has three
# changes: hash. Details of what they changed. This hash has three
# compulsory and one optional member:
# field: string. The name of the field
# removed: string. What was removed from the field
@ -33,14 +33,16 @@
# it was affected by an old Bugzilla bug.)
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS bug/time.html.tmpl %]
[% IF incomplete_data %]
<p>
There used to be a bug Bugzilla which caused activity data
There used to be a [% terms.bug %] in [% terms.Bugzilla %] which caused activity data
to be lost if there was a large number of cc's or dependencies. That
has been fixed, however, there was some data already lost on this bug
that could not be regenerated. The changes that the script could not
has been fixed, however, there was some data already lost on this [% terms.bug %] that
could not be regenerated. The changes that the script could not
reliably determine are prefixed by '?'.
</p>
[% END %]
@ -55,7 +57,7 @@
<th>Added</th>
</tr>
[% FOREACH operation = operations %]
[% FOREACH operation = operations %]
<tr>
<td rowspan="[% operation.changes.size %]" valign="top">
[% operation.who %]
@ -68,7 +70,7 @@
<td>
[% IF change.attachid %]
<a href="attachment.cgi?id=[% change.attachid %]&amp;action=view">
Attachment #[% change.attachid %]</a>
Attachment #[% change.attachid %]</a>
[% END %]
[% change.field %]
</td>

Просмотреть файл

@ -19,15 +19,17 @@
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/header.html.tmpl
title = "Search by bug number"
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Search by $terms.bug number"
%]
<form method="get" action="show_bug.cgi">
<p>
You may find a single bug by entering its bug id here:
You may find a single [% terms.bug %] by entering its [% terms.bug %] id here:
<input name="id" size="6">
<input type="submit" value="Show Me This Bug">
<input type="submit" value="Show Me This [% terms.Bug %]">
</p>
</form>

Просмотреть файл

@ -24,21 +24,23 @@
# This template has the same interface as create.html.tmpl
#%]
[% PROCESS global/variables.none.tmpl %]
[% USE Bugzilla %]
[% cgi = Bugzilla.cgi %]
[% PROCESS global/header.html.tmpl
title = "Enter A Bug"
title = "Enter $terms.ABug"
onload = "PutDescription()"
%]
<p>
<font color="red">
This is a template used on mozilla.org - it, along with the
This is a template used on mozilla.org - it, along with the
comment-guided.txt.tmpl template, are included as a demo of what it's
possible to do with custom templates in general, and custom bug entry
possible to do with custom templates in general, and custom [% terms.bug %] entry
templates in particular. It is recommended that this template be
customised if you want to use it on your Bugzilla installation.
customised if you want to use it on your [% terms.Bugzilla %] installation.
</font>
</p>
@ -66,15 +68,15 @@ function PutDescription() {
[%# Browser sniff to try and reduce the incidence of 4.x and NS 6/7 bugs %]
[% IF cgi.user_agent("Mozilla/4") AND NOT cgi.user_agent("compatible") %]
<div style="background-color: lightgrey;
border: 1px solid black;
<div style="background-color: lightgrey;
border: 1px solid black;
padding: 2px">
<font color="#990000">
<b>
Note: This is a tool for reporting bugs in software from mozilla.org.
Note: This is a tool for reporting [% terms.bugs %] in software from mozilla.org.
Use Netscape's
<a href="http://help.netscape.com/forms/bug-client.html">bug reporting
form</a> to report bugs with Netscape products like Navigator 4.x.
<a href="http://help.netscape.com/forms/bug-client.html">[% terms.bug %] reporting
form</a> to report [% terms.bugs %] with Netscape products like Navigator 4.x.
Netscape products have a blue and black N in the top right hand
corner.
</b>
@ -84,74 +86,74 @@ function PutDescription() {
[% IF cgi.user_agent('Netscape(\d)') %]
[% matches = cgi.user_agent().match('Netscape(\d)') %]
<div style="background-color: lightgrey;
border: 1px solid black;
<div style="background-color: lightgrey;
border: 1px solid black;
padding: 2px">
<font color="#990000">
<b>
You are using Netscape [% matches.0 %].
Report bugs with this browser to the
You are using Netscape [% matches.0 %].
Report [% terms.bugs %] with this browser to the
<a href="http://home.netscape.com/browsers/[% matches.0 %]/feedback/index.html">
Netscape [% matches.0 %] Feedback Center.</a>
</b>
</font>
This form is only for reporting bugs in the Mozilla web browser and other
products from mozilla.org. To report a bug you find in
Netscape [% matches.0 %] with this form,
you must reproduce it first in a
This form is only for reporting [% terms.bugs %] in the Mozilla web browser and other
products from mozilla.org. To report [% terms.abug %] you find in
Netscape [% matches.0 %] with this form,
you must reproduce it first in a
<a href="http://ftp.mozilla.org/pub/mozilla/nightly/latest/">
recent build</a> of Mozilla to make sure the problem hasn't been
recent build</a> of Mozilla to make sure the problem hasn't been
fixed already.
</div>
[% END %]
<p>
This form prompts you for the information required to
file a good bug report (or enhancement request.)
It may seem lengthy, but developers need all this information
to understand and reproduce the bug, which is the first step towards
fixing it. Please note that <strong>we do not accept bug reports by
email</strong> - please do not email developers or mozilla.org staff
with bug reports. <font color="red">Also, please do not
file Mozilla bugs on copies of Mozilla older than two weeks - first,
download a
file a good [% terms.bug %] report (or enhancement request.)
It may seem lengthy, but developers need all this information
to understand and reproduce the [% terms.bug %], which is the first step towards
fixing it. Please note that <strong>we do not accept [% terms.bug %] reports by
email</strong> - please do not email developers or mozilla.org staff
with [% terms.bug %] reports. <font color="red">Also, please do not
file Mozilla [% terms.bugs %] on copies of Mozilla older than two weeks - first,
download a
<a href="http://ftp.mozilla.org/pub/mozilla/nightly/latest/">newer build</a>
and check that the problem is still present.
</font>
</p>
<a name="step1"></a>
<h3>Step 1 - search for your bug</h3>
<a name="step1"></a>
<h3>Step 1 - search for your [% terms.bug %]</h3>
<p>
You need to see if your bug has already been reported.
<font color="red">Please don't skip this step.</font>
50% of the bugs filed in
Bugzilla are duplicates, and and this wastes a lot of our QA engineers' time.
You need to see if your [% terms.bug %] has already been reported.
<font color="red">Please don't skip this step.</font>
50% of the [% terms.bugs %] filed in
[% terms.Bugzilla %] are duplicates, and and this wastes a lot of our QA engineers' time.
</p>
[%# Stop NS 4.x and all v.3 browsers from getting <iframe> code %]
[% IF (cgi.user_agent("Mozilla/4")
AND NOT cgi.user_agent("compatible"))
[% IF (cgi.user_agent("Mozilla/4")
AND NOT cgi.user_agent("compatible"))
OR (cgi.user_agent("Mozilla/[123]")) %]
<p>
Visit the <a href="duplicates.cgi">most-frequently-reported bugs page</a>
and see if your bug is there. If not, go to the
<a href="query.cgi?format=modern">search page</a>
and search Bugzilla by entering two or
three of the main words having to do with your bug in the top box.
Visit the <a href="duplicates.cgi">most-frequently-reported [% terms.bugs %] page</a>
and see if your [% terms.bug %] is there. If not, go to the
<a href="query.cgi?format=modern">search page</a>
and search [% terms.Bugzilla %] by entering two or
three of the main words having to do with your [% terms.bug %] in the top box.
For example: <tt><b>pop3 mail</b></tt> or <tt><b>copy paste</b></tt>.
</p>
</p>
[% ELSE %]
<p>
Check the list of most-frequently-reported bugs below.
If your bug isn't there, search Bugzilla by entering two or
three of the main words having to do with your bug in this box.
Check the list of most-frequently-reported [% terms.bugs %] below.
If your [% terms.bug %] isn't there, search [% terms.Bugzilla %] by entering two or
three of the main words having to do with your [% terms.bug %] in this box.
For example: <tt><b>pop3 mail</b></tt> or <tt><b>copy paste</b></tt>.
</p>
</p>
<script type="text/javascript" language="JavaScript">
[%# Tell QuickSearch to use the custom-supplied load_relative_url()
[%# Tell QuickSearch to use the custom-supplied load_relative_url()
function. This was originally designed for the sidebar, hence the
variable name. %]
var sidebar = 1;
@ -161,19 +163,19 @@ function PutDescription() {
}
</script>
<script type="text/javascript" language="JavaScript"
<script type="text/javascript" language="JavaScript"
src="localconfig.js"></script>
<script type="text/javascript" language="JavaScript"
<script type="text/javascript" language="JavaScript"
src="quicksearch.js"></script>
<form name="f" action="show_bug.cgi" method="get"
onsubmit="QuickSearch(f.id.value); return false;">
onsubmit="QuickSearch(f.id.value); return false;">
<input type="text" name="id" size="40">
<input type="submit" value="Search">
</form>
<iframe name="somebugs" width="100%" height="80%"
<iframe name="somebugs" width="100%" height="80%"
style="border: 2px black solid"
src="duplicates.cgi?product=[% product FILTER uri %]&format=simple">
</iframe>
@ -181,41 +183,41 @@ function PutDescription() {
<p>
Look through the search results. If you get the
<tt><b>Zarro Boogs</b></tt> message, Bugzilla found no bugs that
<tt><b>Zarro Boogs</b></tt> message, [% terms.Bugzilla %] found no [% terms.bugs %] that
match. Check for typos, or add fewer or different keywords.
</p>
<p>
If you find a bug that looks the same as yours, you can add
useful comments to that bug, but please don't open a new one.
Please don't add comments like "please fix this bug" - this
If you find [% terms.abug %] that looks the same as yours, you can add
useful comments to that [% terms.bug %], but please don't open a new one.
Please don't add comments like "please fix this [% terms.bug %]" - this
tends to annoy engineers and slow, rather than speed, the fixing of it.
</p>
<p>
If you find bugs similar to yours, read them and note which component
they are in. You should file your bug in that same component.
If you find [% terms.bugs %] similar to yours, read them and note which component
they are in. You should file your [% terms.bug %] in that same component.
</p>
<a name="step2"></a>
<a name="step2"></a>
<h3>Step 2 - give information</h3>
<p>
If you're pretty certain that your bug isn't in there already, then
If you're pretty certain that your [% terms.bug %] isn't in there already, then
please try to complete this form as accurately as you
can. The more you can tell us, the better our chance of being able
to understand and reproduce your bug.
to understand and reproduce your [% terms.bug %].
</p>
<form method="post" action="post_bug.cgi">
<form method="post" action="post_bug.cgi">
<input type="hidden" name="format" value="guided">
<input type="hidden" name="assigned_to" value="">
<input type="hidden" name="priority"
<input type="hidden" name="priority"
value="[% default.priority FILTER html %]">
<input type="hidden" name="version"
<input type="hidden" name="version"
value="[% default.version FILTER html %]">
<table valign="top" cellpadding="5" cellspacing="5" border="0">
<tr bgcolor="[% tablecolour %]">
@ -233,18 +235,18 @@ function PutDescription() {
<b>Component</b>
</td>
<td valign="top">
<p>
<p>
The area where the problem occurs.
To pick the right component, you could use the same one as
similar bugs you found in your search, or read the full list of
To pick the right component, you could use the same one as
similar [% terms.bugs %] you found in your search, or read the full list of
<a href="describecomponents.cgi?product=[% product %]">component
descriptions</a> if you need more help.
</p>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td valign="top">
<select name="component" id="component"
<td valign="top">
<select name="component" id="component"
size="5" onchange="PutDescription()">
[% FOREACH c = component_ %]
<option value="[% c.name FILTER html %]"
@ -257,7 +259,7 @@ function PutDescription() {
<td valign="top" width="100%">
<div id="description" style="color: green; margin-left: 10px;
height: 5em; overflow: auto;">
<script type="text/javascript" language="JavaScript">
<script type="text/javascript" language="JavaScript">
if ((document.getElementById) && (document.body.innerHTML)) {
document.write("\
Select a component to see its description here.");
@ -291,7 +293,7 @@ function PutDescription() {
<td align="right" valign="middle">
<b>Operating System</b>
</td>
<td valign="top">
<td valign="top">
[% PROCESS select sel = 'op_sys' %]
</td>
</tr>
@ -305,16 +307,16 @@ function PutDescription() {
</td>
<td valign="top">
<p>
If reporting a bug in Mozilla,
this is the line beginning <tt>"Mozilla/5.0"</tt> in
<tt>Help | About Mozilla</tt>.
If reporting [% terms.abug %] in Mozilla,
this is the line beginning <tt>"Mozilla/5.0"</tt> in
<tt>Help | About Mozilla</tt>.
It identifies exactly the version of Mozilla you were using.
If you are using the problem copy of Mozilla, this will be
filled in correctly for you already.
If Mozilla won't start, just enter the URL of the directory you
downloaded it from.
</p>
<input type="text" size="80" name="buildid" value="[% buildid %]">
<input type="text" size="80" name="buildid" value="[% buildid %]">
</td>
</tr>
@ -325,9 +327,9 @@ function PutDescription() {
<td valign="top">
<p>
URL that demonstrates the problem you are seeing (optional.)
<b>IMPORTANT</b>: If you are filing a bug about a broken web page,
you need to read the
<a href="http://www.mozilla.org/docs/web-developer/faq.html">Mozilla
<b>IMPORTANT</b>: If you are filing [% terms.abug %] about a broken web page,
you need to read the
<a href="http://www.mozilla.org/docs/web-developer/faq.html">Mozilla
Web Developer FAQ</a>, which explains how we handle old or
badly-coded web pages.
</p>
@ -337,13 +339,13 @@ function PutDescription() {
<tr bgcolor="[% tablecolour %]">
<td align="right" valign="middle">
<b>Summary</b>
<b>Summary</b>
</td>
<td valign="top">
<p>
A sentence which summarises the problem.
Please be descriptive and use lots of keywords.
</p>
</p>
<p>
<tt>
<font color="#990000">Bad example</font>: mail crashed
@ -360,7 +362,7 @@ function PutDescription() {
<tr>
<td align="right" valign="middle">
<b>Details</b>
<b>Details</b>
</td>
<td valign="top">
<p>
@ -380,7 +382,7 @@ function PutDescription() {
right margins. In Mozilla, the text is only left-justified.
</tt>
</p>
<textarea rows="6" cols="80" name="comment"
<textarea rows="6" cols="80" name="comment"
wrap="hard"></textarea>
</td>
</tr>
@ -412,7 +414,7 @@ function PutDescription() {
<tr>
<td align="right" valign="middle">
<b>Steps to Reproduce</b>
<b>Steps to Reproduce</b>
</td>
<td valign="top">
<p>
@ -429,12 +431,12 @@ function PutDescription() {
<tr bgcolor="[% tablecolour %]">
<td valign="middle" align="right">
<b>Actual Results</b>
<b>Actual Results</b>
</td>
<td valign="top">
<p>
What happened after you performed the steps above?
</p>
</p>
<textarea rows="4" cols="80" name="actual_results"
wrap="hard"></textarea>
</td>
@ -442,31 +444,31 @@ function PutDescription() {
<tr>
<td valign="middle" align="right">
<b>Expected Results</b>
<b>Expected Results</b>
</td>
<td valign="top">
<p>
What should the software have done instead?
</p>
<textarea rows="4" cols="80" name="expected_results"
<textarea rows="4" cols="80" name="expected_results"
wrap="hard"></textarea>
</td>
</tr>
<tr bgcolor="[% tablecolour %]">
<td valign="middle" align="right">
<b>Additional Information</b>
<b>Additional Information</b>
</td>
<td valign="top">
<p>
Add any additional information you feel may be
relevant to this bug, such as the <b>theme</b> you were using
(does the bug still occur
relevant to this [% terms.bug %], such as the <b>theme</b> you were using
(does the [% terms.bug %] still occur
with the default theme?), a <b>Talkback crash ID</b>, or special
information about <b>your computer's configuration</b>. Any information
longer than a few lines, such as a <b>stack trace</b> or <b>HTML
testcase</b>, should be added
using the "Create a new Attachment" link on the bug, after it is filed.
testcase</b>, should be added
using the "Create a new Attachment" link on the [% terms.bug %], after it is filed.
<br>
<br>
If you are reporting a crash, note the module in
@ -475,7 +477,7 @@ function PutDescription() {
have MacsBug, attach the results of the <b><tt>how</tt></b> and
<b><tt>sc</tt></b> commands.
</p>
<textarea rows="8" cols="80" name="additional_info"
<textarea rows="8" cols="80" name="additional_info"
wrap="hard"></textarea>
</td>
</tr>
@ -486,29 +488,29 @@ function PutDescription() {
</td>
<td valign="top">
<p>
How serious the problem is. Also, if your bug is a request for a new
How serious the problem is. Also, if your [% terms.bug %] is a request for a new
feature or enhancement, say so here.
</p>
<select name="bug_severity">
<option name="blocker" value="blocker">
Blocker: This bug prevents you from testing or developing the
Blocker: This [% terms.bug %] prevents you from testing or developing the
software.
</option>
<option name="critical" value="critical">
Critical: The software crashes, hangs, or causes you to
Critical: The software crashes, hangs, or causes you to
lose data.
</option>
<option name="major" value="major">
Major: A major feature is broken.
</option>
<option name="normal" value="normal" selected="selected">
Normal: It's a bug that should be fixed.
Normal: It's [% terms.abug %] that should be fixed.
</option>
<option name="minor" value="minor">
Minor: Minor loss of function, and there's an easy workaround.
</option>
<option name="trivial" value="trivial">
Trivial: A cosmetic problem, such as a misspelled word or
Trivial: A cosmetic problem, such as a misspelled word or
misaligned text.
</option>
<option name="enhancement" value="enhancement">
@ -518,24 +520,24 @@ function PutDescription() {
</td>
</tr>
</table>
<a name="step3"></a>
<h3>Step 3 - submit the bug</h3>
<a name="step3"></a>
<h3>Step 3 - submit the [% terms.bug %]</h3>
<p>
<input type="submit" value=" Submit Bug Report "
onclick="if (this.form.comment.value == '')
{ alert('Please enter some details about this bug.');
<input type="submit" value=" Submit [% terms.Bug %] Report "
onclick="if (this.form.comment.value == '')
{ alert('Please enter some details about this [% terms.bug %].');
this.form.comment.focus();
return false; } return true;">
</p>
<p>
That's it! Thanks very much. You'll be notified by email about any
progress that is made on fixing your bug.
progress that is made on fixing your [% terms.bug %].
</p>
</form>
[% PROCESS global/footer.html.tmpl %]

Просмотреть файл

@ -86,7 +86,7 @@ function set_assign_to() {
[% INCLUDE 'bug/create/user-message.html.tmpl' %]
</td>
</tr>
<tr>
<td><br></td>
</tr>
@ -94,11 +94,11 @@ function set_assign_to() {
<tr>
<td align="right" valign="top"><strong>Reporter:</strong></td>
<td valign="top">[% reporter FILTER html %]</td>
<td align="right" valign="top"><strong>Product:</strong></td>
<td valign="top">[% product FILTER html %]</td>
</tr>
[%# We can't use the select block in these two cases for various reasons. %]
<tr>
<td align="right" valign="top">
@ -112,8 +112,8 @@ function set_assign_to() {
</option>
[%- END %]
</select>
</td>
</td>
<td align="right" valign="top">
<strong>
<a href="describecomponents.cgi?product=[% product FILTER url_quote %]">
@ -129,49 +129,49 @@ function set_assign_to() {
</option>
[%- END %]
</select>
</td>
</td>
</tr>
<tr>
<td>&nbsp;</td>
<td colspan="3"></td>
</tr>
<tr>
[% sel = { description => 'Platform', name => 'rep_platform' } %]
[% INCLUDE select %]
[% sel = { description => 'OS', name => 'op_sys' } %]
[% INCLUDE select %]
</tr>
<tr>
<tr>
[% IF Param('letsubmitterchoosepriority') %]
[% sel = { description => 'Priority', name => 'priority' } %]
[% INCLUDE select %]
[% ELSE %]
<input type="hidden" name="priority"
<input type="hidden" name="priority"
value="[% default.priority FILTER html %]">
[% END %]
[% sel = { description => 'Severity', name => 'bug_severity' } %]
[% INCLUDE select %]
[% INCLUDE select %]
</tr>
<tr>
<td>&nbsp;</td>
<td colspan="3"></td>
</tr>
[% IF bug_status.size > 1 %]
[% IF bug_status.size > 1 %]
<tr>
[% sel = { description => 'Initial State', name => 'bug_status' } %]
[% INCLUDE select %]
<td colspan="2"></td>
</tr>
[% ELSE %]
<input type="hidden" name="bug_status" value="[% default.bug_status %]">
<input type="hidden" name="bug_status" value="[% default.bug_status %]">
[% END %]
<tr>
@ -216,18 +216,18 @@ function set_assign_to() {
<tr>
<td align="right"><strong>URL:</strong></td>
<td colspan="3">
<input name="bug_file_loc" size="60"
<input name="bug_file_loc" size="60"
value="[% bug_file_loc FILTER html %]">
</td>
</tr>
<tr>
<td align="right"><strong>Summary:</strong></td>
<td colspan="3">
<input name="short_desc" size="60" value="[% short_desc FILTER html %]">
</td>
</tr>
<tr><td align="right" valign="top"><strong>Description:</strong></td>
<td colspan="3">
<textarea wrap="hard" name="comment" rows="10" cols="80">
@ -266,18 +266,18 @@ function set_assign_to() {
</td>
</tr>
[% END %]
<tr>
<td></td>
<td colspan="3">
[% IF group.size %]
<br>
<strong>
Only users in all of the selected groups can view this bug:
Only users in all of the selected groups can view this [% terms.bug %]:
</strong>
<br>
<font size="-1">
(Leave all boxes unchecked to make this a public bug.)
(Leave all boxes unchecked to make this a public [% terms.bug %].)
</font>
<br>
<br>
@ -294,16 +294,16 @@ function set_assign_to() {
[% END %]
</td>
</tr>
<tr>
<td></td>
<td colspan="3">
<input type="submit" value=" Commit "
onclick="if (this.form.short_desc.value == '')
{ alert('Please enter a summary sentence for this bug.');
<input type="submit" value=" Commit "
onclick="if (this.form.short_desc.value == '')
{ alert('Please enter a summary sentence for this [% terms.bug %].');
return false; } return true;">
&nbsp;&nbsp;&nbsp;&nbsp;
<input type="submit" name="maketemplate"
<input type="submit" name="maketemplate"
value="Remember values as bookmarkable template">
</td>
</tr>
@ -313,8 +313,8 @@ function set_assign_to() {
<td></td>
<td colspan="3">
<br>
We've made a guess at your operating system and platform.
Please check them and, if we got it wrong, email
We've made a guess at your operating system and platform.
Please check them and, if we got it wrong, email
[% Param('maintainer') %].
</td>
</tr>
@ -338,7 +338,7 @@ function set_assign_to() {
</strong>
</td>
[% END %]
<td>
<select name="[% sel.name %]">
[%- FOREACH x = ${sel.name} %]

Просмотреть файл

@ -19,8 +19,10 @@
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/header.html.tmpl
title = "Bug $id Submitted"
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "$terms.Bug $id Submitted"
%]
[% header_done = 1 %]

Просмотреть файл

@ -19,14 +19,16 @@
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Bookmarks are your friend"
h1 = "Template constructed"
%]
<p>
If you bookmark <a href="enter_bug.cgi?[% url FILTER html %]">this link</a>,
going to the bookmark will bring up the enter bug page with the fields
going to the bookmark will bring up the enter [% terms.bug %] page with the fields
initialized as you've requested.
</p>

Просмотреть файл

@ -28,7 +28,9 @@
# the 'product' variable.
#%]
Before reporting a bug, please read the <a href="bugwritinghelp.html">
bug writing guidelines</a>, please look at the list of
<a href="duplicates.cgi">most frequently reported bugs</a>, and please
<a href="query.cgi">search</a> for the bug.
[% PROCESS global/variables.none.tmpl %]
Before reporting [% terms.abug %], please read the <a href="bugwritinghelp.html">
[% terms.bug %] writing guidelines</a>, please look at the list of
<a href="duplicates.cgi">most frequently reported [% terms.bugs %]</a>, and please
<a href="query.cgi">search</a> for the [% terms.bug %].

Просмотреть файл

@ -24,21 +24,23 @@
# multiple_bugs: boolean. True if bug_id contains > 1 bug number.
# doall: boolean. True if we are displaying every bug in the database.
# showsummary: boolean. True if we are showing bug summaries.
# rankdir: string. "TB" if we are ranking top-to-bottom,
# rankdir: string. "TB" if we are ranking top-to-bottom,
"LR" if left-to-right.
# image_url: string. The URL of the graphic showing the dependencies.
# map_url: string. The URL of the map file for the image. (Optional)
# image_map: string. The image map for the graphic showing the
# image_map: string. The image map for the graphic showing the
dependencies. (Optional)
#%]
[% PROCESS global/variables.none.tmpl %]
[% title = "Dependency Graph"
h1 = title
%]
[% IF NOT multiple_bugs AND NOT doall %]
[% title = "$title for bug $bug_id"
h1 = "$h1 for bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
[% title = "$title for $terms.bug $bug_id"
h1 = "$h1 for $terms.bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
%]
[% END %]
@ -47,14 +49,14 @@
[% image_map %]
<p>
Green circles represent open bugs.
Green circles represent open [% terms.bugs %].
</p>
[% IF image_map %]
<img src="[% image_url %]" alt="Dependency graph" usemap="#imagemap">
<img src="[% image_url %]" alt="Dependency graph" usemap="#imagemap">
[% ELSE %]
<a href="[% map_url %]">
<img src="[% image_url %]" alt="Dependency graph" ismap="ismap">
<img src="[% image_url %]" alt="Dependency graph" ismap="ismap">
</a>
[% END %]
@ -64,27 +66,27 @@
<table>
<tr>
<td>
Bug numbers:
[% terms.Bug %] numbers:
<input name="id" value="[% bug_id %]">
</td>
</tr>
<tr>
<td>
<input type="checkbox" name="doall"
<input type="checkbox" name="doall"
[% " checked" IF doall %]>
Show <b>every</b> bug in the system with dependencies
Show <b>every</b> [% terms.bug %] in the system with dependencies
</td>
</tr>
<tr>
<td colspan="3">
<input type="checkbox" name="showsummary"
<input type="checkbox" name="showsummary"
[% " checked" IF showsummary %]>
Show the summaries of all displayed bugs
Show the summaries of all displayed [% terms.bugs %]
</td>
</tr>
<tr>
<td colspan="3">
<select name="rankdir">

Просмотреть файл

@ -3,7 +3,7 @@
# 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
@ -21,20 +21,23 @@
# Myk Melez <myk@mozilla.org>
#%]
[% PROCESS global/header.html.tmpl
title = "Dependency tree for Bug $bugid"
h1 = "Dependency tree for <a href=\"show_bug.cgi?id=$bugid\">bug $bugid</a>"
[% INCLUDE global/variables.none.tmpl %]
[% 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>"
style = "strike { background-color: #d9d9d9; color: #000000; }"
%]
[% PROCESS depthControlToolbar %]
[%# Display the tree of bugs that this bug depends on. %]
<h3>[% hide_resolved ? "Open b" : "B" %]ugs that <a href="show_bug.cgi?id=[% bugid %]">bug [% bugid %]</a> depends on</h3>
<h3>[% hide_resolved ? "Open $terms.bugs" : "$terms.Bugs" %]
that <a href="show_bug.cgi?id=[% bugid %]">[% terms.bug %]&nbsp;[% bugid %]</a> depends on</h3>
[% IF dependson_ids.size > 0 %]
(
[% IF maxdepth -%]Up to [% maxdepth %] level[% "s" IF maxdepth > 1 %] deep | [% END %]
<a href="buglist.cgi?bug_id=[% dependson_ids.join(",") %]">view as bug list</a>
<a href="buglist.cgi?bug_id=[% dependson_ids.join(",") %]">view as [% terms.bug %] list</a>
[% IF canedit && dependson_ids.size > 1 %]
| <a href="buglist.cgi?bug_id=[% dependson_ids.join(",") %]&amp;tweak=1">change several</a>
[% END %])
@ -45,11 +48,12 @@
[% END %]
[%# Display the tree of bugs that this bug blocks. %]
<h3>[% hide_resolved ? "Open b" : "B" %]ugs that <a href="show_bug.cgi?id=[% bugid %]">bug [% bugid %]</a> blocks</h3>
<h3>[% hide_resolved ? "Open $terms.bugs" : "$terms.Bugs" %]
that <a href="show_bug.cgi?id=[% bugid %]">[% terms.bug %]&nbsp;[% bugid %]</a> blocks</h3>
[% IF blocked_ids.size > 0 %]
(
[% IF maxdepth -%]Up to [% maxdepth %] level[% "s" IF maxdepth > 1 %] deep | [% END %]
<a href="buglist.cgi?bug_id=[% blocked_ids.join(",") %]">view as bug list</a>
<a href="buglist.cgi?bug_id=[% blocked_ids.join(",") %]">view as [% terms.bug %] list</a>
[% IF canedit && blocked_ids.size > 1 %]
| <a href="buglist.cgi?bug_id=[% blocked_ids.join(",") %]&amp;tweak=1">change several</a>
[% END %])
@ -75,16 +79,16 @@
[% dep = tree.$dep_id %]
<li>
[% "<strike>" IF !dep.open %]
<a href="show_bug.cgi?id=[% dep_id %]">[% dep_id %]
<a href="show_bug.cgi?id=[% dep_id %]">[% dep_id %]
[[% IF dep.milestone %][% dep.milestone FILTER html %], [% END %]
[% dep.assignee_email FILTER html %]] -
[% dep.assignee_email FILTER html %]] -
[% IF dep.seen %]
<i>This bug appears elsewhere in this tree.</i></a>
<i>This [% terms.bug %] appears elsewhere in this tree.</i></a>
[% ELSE %]
[% dep.summary FILTER html %].</a>
[% END %]
[% "</strike>" IF !dep.open %]
[% INCLUDE display_tree bug_id=dep_id
[% INCLUDE display_tree bug_id=dep_id
IF dep.dependencies.size > 0 && !dep.seen %]
</li>
[% END %]
@ -101,7 +105,7 @@
[%# Hide/show resolved button
Swaps text depending on the state of hide_resolved %]
<td align="center">
<form method="get" action="showdependencytree.cgi"
<form method="get" action="showdependencytree.cgi"
style="display: inline; margin: 0px;">
<input name="id" type="hidden" value="[% bugid %]">
[% IF maxdepth %]
@ -124,7 +128,7 @@
<form method="get" action="showdependencytree.cgi"
style="display: inline; margin: 0px;">
[%# set to one form %]
<input type="submit" value="&nbsp;1&nbsp;" [%
<input type="submit" value="&nbsp;1&nbsp;" [%
realdepth < 2 || maxdepth == 1 ? "disabled" : ""
%]>
<input name="id" type="hidden" value="[% bugid %]">
@ -134,28 +138,28 @@
</td>
<td>
<form method="get" action="showdependencytree.cgi"
<form method="get" action="showdependencytree.cgi"
style="display: inline; margin: 0px;">
[%# Minus one form
[%# Minus one form
Allow subtracting only when realdepth and maxdepth > 1 %]
<input name="id" type="hidden" value="[% bugid %]">
<input name="maxdepth" type="hidden" value="[%
maxdepth == 1 ? 1
<input name="maxdepth" type="hidden" value="[%
maxdepth == 1 ? 1
: ( maxdepth ? maxdepth - 1 : realdepth - 1 )
%]">
<input name="hide_resolved" type="hidden" value="[% hide_resolved %]">
<input type="submit" value="&nbsp;&lt;&nbsp;" [%
realdepth < 2 || ( maxdepth && maxdepth < 2 ) ? "disabled" : ""
realdepth < 2 || ( maxdepth && maxdepth < 2 ) ? "disabled" : ""
%]>
</form>
</td>
<td>
<form method="get" action="showdependencytree.cgi"
<form method="get" action="showdependencytree.cgi"
style="display: inline; margin: 0px;">
[%# Limit entry form: the button can not do anything when total depth
is less than two, so disable it %]
<input name="maxdepth" size="4" maxlength="4" value="[%
<input name="maxdepth" size="4" maxlength="4" value="[%
maxdepth > 0 && maxdepth <= realdepth ? maxdepth : ""
%]">
<input name="id" type="hidden" value="[% bugid %]">
@ -167,16 +171,16 @@
</td>
<td>
<form method="get" action="showdependencytree.cgi"
<form method="get" action="showdependencytree.cgi"
style="display: inline; margin: 0px;">
[%# plus one form
[%# plus one form
Disable button if total depth < 2, or if depth set to unlimited %]
<input name="id" type="hidden" value="[% bugid %]">
[% IF maxdepth %]
<input name="maxdepth" type="hidden" value="[% maxdepth + 1 %]">
[% END %]
<input name="hide_resolved" type="hidden" value="[% hide_resolved %]">
<input type="submit" value="&nbsp;&gt;&nbsp;" [%
<input type="submit" value="&nbsp;&gt;&nbsp;" [%
realdepth < 2 || ! maxdepth || maxdepth >= realdepth ?
"disabled" : ""
%]>
@ -184,12 +188,12 @@
</td>
<td>
<form method="get" action="showdependencytree.cgi"
<form method="get" action="showdependencytree.cgi"
style="display: inline; margin: 0px;">
[%# Unlimited button %]
<input name="id" type="hidden" value="[% bugid %]">
<input name="hide_resolved" type="hidden" value="[% hide_resolved %]">
<input type="submit" value="&nbsp;Unlimited&nbsp;"
<input type="submit" value="&nbsp;Unlimited&nbsp;"
[% maxdepth == 0 || maxdepth == realdepth ? "disabled" : "" %]>
</form>
</td>

Просмотреть файл

@ -17,9 +17,11 @@
# Rights Reserved.
#
# Contributor(s): Gervase Markham <gerv@gerv.net>
# Vaskin Kissoyan <vkissoyan@yahoo.com>
# Vaskin Kissoyan <vkissoyan@yahoo.com>
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS bug/time.html.tmpl %]
[% IF UserInGroup(Param('timetrackinggroup')) %]
@ -33,7 +35,7 @@
new_time =
fRemainingTime - document.changeform.work_time.value;
// get upto 2 decimal places
document.changeform.remaining_time.value =
document.changeform.remaining_time.value =
Math.round(new_time * 100)/100;
}
@ -55,42 +57,42 @@
[%# *** Hardware Reporter Product OS AddCC *** %]
<table cellspacing="1" cellpadding="1" border="0">
<tr>
<tr>
<td align="right">
<b>Bug#:</b>
<b>[% terms.Bug %]#:</b>
</td>
<td>
<a href="[% Param('urlbase') %]show_bug.cgi?id=[% bug.bug_id %]">
[% bug.bug_id %]</a>
[% IF Param("usebugaliases") %]
<label title="a name for the bug that can be used in place of its ID number, f.e. when adding it to a list of dependencies">
<label title="a name for the [% terms.bug %] that can be used in place of its ID number, f.e. when adding it to a list of dependencies">
<b>alias:</b>
<input name="alias" value="[% bug.alias FILTER html %]" size="20" maxlength="20">
</label>
[% END %]
</td>
<td>&nbsp;</td>
<td align="right">
<b><u>H</u>ardware:</b>
</td>
[% PROCESS select selname => "rep_platform" accesskey => "h" %]
<td align="right">
<b>Reporter:</b>
</td>
<td>
[% bug.reporter.identity FILTER html %]
</td>
</td>
</tr>
<tr>
<td align="right">
<b><u>P</u>roduct:</b>
</td>
[% PROCESS select selname => "product" accesskey => "p" %]
<td align="right">
<b><u>O</u>S:</b>
</td>
@ -104,7 +106,7 @@
</td>
</tr>
[%# *** Component Version CC Priority Severity AssignedTo Milestone *** %]
[%# *** Component Version CC Priority Severity AssignedTo Milestone *** %]
<tr>
<td align="right">
@ -114,16 +116,16 @@
</b>
</td>
[% PROCESS select selname => "component" accesskey => "m" %]
<td align="right">
<b><u>V</u>ersion:</b>
</td>
[% PROCESS select selname => "version" accesskey => "v" %]
<td rowspan="4" align="right" valign="top">
<b>CC:</b>
</td>
<td rowspan="4" valign="top">
<td rowspan="4" valign="top">
[% IF bug.cc %]
<select name="cc" multiple="multiple" size="5">
[% FOREACH c = bug.cc %]
@ -138,22 +140,22 @@
[% END %]
</td>
</tr>
<tr>
<td align="right">
<b>
<a href="bug_status.html">Status</a>:
</b>
</td>
<td>[% bug.bug_status FILTER html %]</td>
<td>[% bug.bug_status FILTER html %]</td>
<td>&nbsp;</td>
<td align="right">
<b><a href="bug_status.html#priority">Pr<u>i</u>ority</a>:</b>
</td>
[% PROCESS select selname => "priority" accesskey => "i" %]
</tr>
<tr>
<td align="right">
<b>
@ -163,18 +165,18 @@
<td>
[% bug.resolution FILTER html %]
[% IF bug.resolution == "DUPLICATE" %]
of [% "bug ${bug.dup_id}" FILTER bug_link(bug.dup_id) %]
of [% terms.bug %]&nbsp;[% "${bug.dup_id}" FILTER bug_link(bug.dup_id) %]
[% END %]
</td>
</td>
<td>&nbsp;</td>
<td align="right">
<b><a href="bug_status.html#severity">S<u>e</u>verity</a>:</b>
</td>
[% PROCESS select selname = "bug_severity" accesskey => "e" %]
</tr>
<tr>
<td align="right">
<b>
@ -183,7 +185,7 @@
</td>
<td>[% bug.assigned_to.identity FILTER html %]</td>
<td>&nbsp;</td>
[% IF Param("usetargetmilestone") && bug.target_milestone %]
<td align="right">
<b>
@ -228,7 +230,7 @@
<input name="bug_file_loc" accesskey="u"
value="[% bug.bug_file_loc FILTER html %]" size="60">
</td>
<td rowspan="4" colspan="2" valign="top">
<td rowspan="4" colspan="2" valign="top">
[% IF bug.flag_types.size > 0 %]
[% PROCESS "flag/list.html.tmpl"
flag_types = bug.flag_types
@ -236,7 +238,7 @@
[% END %]
</td>
</tr>
<tr>
<td align="right">
<b><u>S</u>ummary:</b>
@ -247,7 +249,7 @@
</td>
</tr>
[% IF Param('usestatuswhiteboard') %]
[% IF Param('usestatuswhiteboard') %]
<tr>
<td align="right">
<b>Status <u>W</u>hiteboard:</b>
@ -269,7 +271,7 @@
<input name="keywords" accesskey="k"
value="[% bug.keywords.join(', ') FILTER html %]" size="60">
</td>
</tr>
</tr>
[% END %]
</table>
@ -299,16 +301,16 @@
<tr>
<td align="center">
<input name="estimated_time"
value="[% PROCESS formattimeunit
value="[% PROCESS formattimeunit
time_unit=bug.estimated_time %]"
size="6" maxlength="6">
</td>
<td align="center">
[% PROCESS formattimeunit
[% PROCESS formattimeunit
time_unit=(bug.actual_time + bug.remaining_time) %]
</td>
<td align="center">
[% PROCESS formattimeunit time_unit=bug.actual_time %] +
[% PROCESS formattimeunit time_unit=bug.actual_time %] +
<input name="work_time" value="0" size="3" maxlength="6"
onchange="adjustRemainingTime();">
</td>
@ -328,11 +330,11 @@
</tr>
</table>
[% END %]
[%# *** Attachments *** %]
[% PROCESS attachment/list.html.tmpl
attachments = bug.attachments
[% PROCESS attachment/list.html.tmpl
attachments = bug.attachments
bugid = bug.bug_id
num_attachment_flag_types = bug.num_attachment_flag_types
show_attachment_flags = bug.show_attachment_flags
@ -345,12 +347,12 @@
[% PROCESS dependencies accesskey = "d"
dep = { title => "<u>d</u>epends on", fieldname => "dependson" } %]
<td rowspan="2">
<a href="showdependencytree.cgi?id=[% bug.bug_id %]">Show
dependency tree</a>
<a href="showdependencytree.cgi?id=[% bug.bug_id %]">Show
dependency tree</a>
[% IF Param('webdotbase') %]
[% IF Param('webdotbase') %]
<br>
<a href="showdependencygraph.cgi?id=[% bug.bug_id %]">Show
<a href="showdependencygraph.cgi?id=[% bug.bug_id %]">Show
dependency graph</a>
[% END %]
</td>
@ -370,10 +372,10 @@
</th>
<td>
[% bug.votes %]&nbsp;&nbsp;&nbsp;
<a href="votes.cgi?action=show_bug&amp;bug_id=[% bug.bug_id %]">Show
votes for this bug</a>&nbsp;&nbsp;&nbsp;
<a href="votes.cgi?action=show_user&amp;bug_id=[% bug.bug_id %]">Vote
for this bug</a>
<a href="votes.cgi?action=show_bug&amp;bug_id=[% bug.bug_id %]">Show
votes for this [% terms.bug %]</a>&nbsp;&nbsp;&nbsp;
<a href="votes.cgi?action=show_user&amp;bug_id=[% bug.bug_id %]">Vote
for this [% terms.bug %]</a>
</td>
</tr>
</table>
@ -402,17 +404,17 @@
[% IF NOT emitted_description %]
[% emitted_description = 1 %]
<br>
<b>Only users in all of the selected groups can view this bug:</b>
<b>Only users in all of the selected groups can view this [% terms.bug %]:</b>
<br>
<font size="-1">
(Unchecking all boxes makes this a more public bug.)
(Unchecking all boxes makes this a more public [% terms.bug %].)
</font>
<br>
<br>
[% END %]
&nbsp;&nbsp;&nbsp;&nbsp;
<input type="checkbox" name="bit-[% group.bit %]" value="1"
<input type="checkbox" name="bit-[% group.bit %]" value="1"
[% " checked=\"checked\"" IF group.ison %]
[% " disabled=\"disabled\"" IF NOT group.ingroup %]>
[% group.description %]
@ -422,7 +424,7 @@
[% IF NOT inallgroups %]
<b>
Only members of a group can change the visibility of a bug for
Only members of a group can change the visibility of [% terms.abug %] for
that group
</b>
<br>
@ -430,15 +432,15 @@
[% IF inagroup %]
<p>
<b>Users in the roles selected below can always view this bug:</b>
<b>Users in the roles selected below can always view this [% terms.bug %]:</b>
<br>
<small>
(The assignee
(The assignee
[% IF (Param('useqacontact')) %]
and QA contact
[% END %]
can always see a bug, and this section does not take effect unless
the bug is restricted to at least one group.)
can always see [% terms.abug %], and this section does not take effect unless
the [% terms.bug %] is restricted to at least one group.)
</small>
</p>
@ -447,7 +449,7 @@
[% " checked" IF bug.reporter_accessible %]>Reporter
<input type="checkbox" name="cclist_accessible" value="1"
[% " checked" IF bug.cclist_accessible %]>CC List
</p>
</p>
[% END %]
[% END %]
@ -461,10 +463,10 @@
[% knum = 1 %]
[% IF bug.bug_status == "UNCONFIRMED" &&
[% IF bug.bug_status == "UNCONFIRMED" &&
bug.user.canconfirm %]
<input type="radio" name="knob" value="confirm">
Confirm bug (change status to <b>NEW</b>)
Confirm [% terms.bug %] (change status to <b>NEW</b>)
<br>
[% knum = knum + 1 %]
[% END %]
@ -473,8 +475,8 @@
[% IF bug.isopened %]
[% IF bug.bug_status != "ASSIGNED" && bug.user.canconfirm %]
<input type="radio" name="knob" value="accept">
Accept bug (
[% "confirm bug, " IF bug.isunconfirmed %]change
Accept [% terms.bug %] (
[% IF bug.isunconfirmed %]confirm [% terms.bug %], [% END %]change
status to <b>ASSIGNED</b>)
<br>
[% knum = knum + 1 %]
@ -483,13 +485,13 @@
[% IF bug.resolution %]
<input type="radio" name="knob" value="clearresolution">
Clear the resolution (remove the current resolution of
<b>[% bug.resolution FILTER html %]</b>)<br>
<b>[% bug.resolution FILTER html %]</b>)<br>
[% knum = knum + 1 %]
[% END %]
<input type="radio" name="knob" value="resolve">
Resolve bug, changing <a href="bug_status.html">resolution</a> to
<select name="resolution"
Resolve [% terms.bug %], changing <a href="bug_status.html">resolution</a> to
<select name="resolution"
onchange="document.changeform.knob[[% knum %]].checked=true">
[% FOREACH r = bug.choices.resolution %]
<option value="[% r FILTER html %]">[% r FILTER html %]</option>
@ -499,66 +501,66 @@
[% knum = knum + 1 %]
<input type="radio" name="knob" value="duplicate">
Resolve bug, mark it as duplicate of bug #
<input name="dup_id" size="6"
Resolve [% terms.bug %], mark it as duplicate of [% terms.bug %] #
<input name="dup_id" size="6"
onchange="if (this.value != '')
{document.changeform.knob[[% knum %]].checked=true}">
<br>
[% knum = knum + 1 %]
<input type="radio" name="knob" value="reassign">
<a href="bug_status.html#assigned_to">Reassign</a> bug to
<input name="assigned_to" size="32"
onchange="if ((this.value != '[% bug.assigned_to.email FILTER js %]') &&
<input type="radio" name="knob" value="reassign">
<a href="bug_status.html#assigned_to">Reassign</a> [% terms.bug %] to
<input name="assigned_to" size="32"
onchange="if ((this.value != '[% bug.assigned_to.email FILTER js %]') &&
(this.value != '')) {
document.changeform.knob[[% knum %]].checked=true;
}"
document.changeform.knob[[% knum %]].checked=true;
}"
value="[% bug.assigned_to.email FILTER html %]">
<br>
[% IF bug.isunconfirmed && bug.user.canconfirm %]
&nbsp;&nbsp;&nbsp;&nbsp;<input type="checkbox" name="andconfirm">
and confirm bug (change status to <b>NEW</b>)
and confirm [% terms.bug %] (change status to <b>NEW</b>)
<br>
[% END %]
[% knum = knum + 1 %]
<input type="radio" name="knob" value="reassignbycomponent">
Reassign bug to owner
Reassign [% terms.bug %] to owner
[% " and QA contact" IF Param('useqacontact') %]
of selected component
<br>
[% IF bug.isunconfirmed && bug.user.canconfirm %]
&nbsp;&nbsp;&nbsp;&nbsp;<input type="checkbox" name="compconfirm">
and confirm bug (change status to <b>NEW</b>)
and confirm [% terms.bug %] (change status to <b>NEW</b>)
<br>
[% END %]
[% knum = knum + 1 %]
[% ELSE %]
[% IF bug.resolution != "MOVED" ||
(bug.resolution == "MOVED" && bug.user.canmove) %]
<input type="radio" name="knob" value="reopen"> Reopen bug
(bug.resolution == "MOVED" && bug.user.canmove) %]
<input type="radio" name="knob" value="reopen"> Reopen [% terms.bug %]
<br>
[% knum = knum + 1 %]
[% END %]
[% IF bug.bug_status == "RESOLVED" %]
<input type="radio" name="knob" value="verify">
Mark bug as <b>VERIFIED</b><br>
Mark [% terms.bug %] as <b>VERIFIED</b><br>
[% knum = knum + 1 %]
[% END %]
[% IF bug.bug_status != "CLOSED" %]
<input type="radio" name="knob" value="close">
Mark bug as <b>CLOSED</b><br>
Mark [% terms.bug %] as <b>CLOSED</b><br>
[% knum = knum + 1 %]
[% END %]
[% END %]
[% END %]
[% END %]
<input type="submit" value="Commit">
<input type="hidden" name="form_name" value="process_bug">
<p>
<font size="+1">
<b>
<a href="show_activity.cgi?id=[% bug.bug_id %]">View Bug Activity</a>
<a href="show_activity.cgi?id=[% bug.bug_id %]">View [% terms.Bug %] Activity</a>
&nbsp; | &nbsp;
<a href="long_list.cgi?buglist=[% bug.bug_id %]">Format For Printing</a>
</b>
@ -566,10 +568,10 @@
[% IF bug.user.canmove %]
&nbsp; <font size="+1"><b> | </b></font> &nbsp;
<input type="submit" name="action"
<input type="submit" name="action"
value="[% Param("move-button-text") %]">
[% END %]
</p>
</p>
[%# *** Additional Comments *** %]
@ -587,11 +589,11 @@
</table>
<hr>
[% PROCESS bug/comments.html.tmpl
comments = bug.longdescs
[% PROCESS bug/comments.html.tmpl
comments = bug.longdescs
mode = "edit"
%]
</form>
[%############################################################################%]
@ -599,7 +601,7 @@
[%############################################################################%]
[% BLOCK dependencies %]
<th align="right">Bug [% bug.bug_id %] [%+ dep.title %]:</th>
<th align="right">[% terms.Bug %]&nbsp;[% bug.bug_id %] [%+ dep.title %]:</th>
<td>
[% FOREACH depbug = bug.${dep.fieldname} %]
[% depbug FILTER bug_link(depbug) %][% " " %]
@ -616,7 +618,7 @@
[%# Block for SELECT fields #%]
[%############################################################################%]
[% BLOCK select %]
[% BLOCK select %]
<td>
<label for="[% selname %]" accesskey="[% accesskey %]">
<select name="[% selname %]" id="[% selname %]">

Просмотреть файл

@ -18,18 +18,20 @@
#
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/variables.none.tmpl %]
[% IF bug_list && bug_list.size > 0 %]
[% this_bug_idx = lsearch(bug_list, bug.bug_id) %]
<b>Bug List:</b>
<b>[% terms.Bug %] List:</b>
[% IF this_bug_idx != -1 %]
([% this_bug_idx + 1 %] of [% bug_list.size %])
[% END %]
<a href="show_bug.cgi?id=[% bug_list.first %]">First</a>
<a href="show_bug.cgi?id=[% bug_list.last %]">Last</a>
[% IF bug.bug_id %]
[% IF bug.bug_id %]
[% IF this_bug_idx != -1 %]
[% IF this_bug_idx > 0 %]
[% prev_bug = this_bug_idx - 1 %]
@ -37,7 +39,7 @@
[% ELSE %]
<i><font color="#777777">Prev</font></i>
[% END %]
[% IF this_bug_idx + 1 < bug_list.size %]
[% next_bug = this_bug_idx + 1 %]
<a href="show_bug.cgi?id=[% bug_list.$next_bug %]">Next</a>
@ -45,14 +47,14 @@
<i><font color="#777777">Next</font></i>
[% END %]
[% ELSE %]
(This bug is not in your list)
(This [% terms.bug %] is not in your list)
[% END %]
[% ELSE %]
&nbsp;&nbsp;
[% END %]
&nbsp;&nbsp;<a href="buglist.cgi?regetlastlist=1">Show list</a>
[% END %]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="query.cgi">Query page</a>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="enter_bug.cgi">Enter new bug</a>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="enter_bug.cgi">Enter new [% terms.bug %]</a>

Просмотреть файл

@ -22,20 +22,22 @@
[%# INTERFACE:
# mailing_bugid: string. ID of the bug this mail is concerning.
# mailrecipients: hash. People involved in this change. Hash has up to five
# mailrecipients: hash. People involved in this change. Hash has up to five
# elements:
# changer: string. The login name of the user who made the
# changer: string. The login name of the user who made the
# change.
#
# For bug changes where people need to be notified:
# owner: string. The login name of the bug assignee.
# reporter: string. The login name of the bug reporter.
# qacontact: string. The login name of the bug's QA contact.
# qacontact: string. The login name of the bug's QA contact.
# Optional.
# cc: list of strings. The login names of those on the CC
# cc: list of strings. The login names of those on the CC
# list.
#%]
[% PROCESS global/variables.none.tmpl %]
[% mail = SendBugMail(mailing_bugid, mailrecipients) %]
[% PROCESS emails
@ -49,7 +51,7 @@
%]
<br>
<center>
If you wish to tweak the kinds of mail Bugzilla sends you, you can
If you wish to tweak the kinds of mail [% terms.Bugzilla %] sends you, you can
<a href="userprefs.cgi?tab=email">change your preferences</a>.
</center>
@ -62,7 +64,7 @@
<b>[% description %]:</b>
[% IF names.size > 0 %]
[%+ FOREACH name = names %]
[% name %][% ", " UNLESS loop.last() %]
[% name %][% ", " UNLESS loop.last() %]
[% END %]
[% ELSE %]
no one

Просмотреть файл

@ -26,45 +26,47 @@
# against which a bug is being duped
# duplicate_bug_id: number; the bug number for the bug
# being duped
# cclist_accessible: boolean; whether or not users on the cc: list
# cclist_accessible: boolean; whether or not users on the cc: list
# of the original bug can access that bug.
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl title="Duplicate Warning" %]
<p>
When marking a bug as a duplicate, the reporter of the duplicate
is normally added to the CC list of the original. The permissions
on bug [% original_bug_id %] (the original) are currently set
When marking [% terms.abug %] as a duplicate, the reporter of the duplicate
is normally added to the CC list of the original. The permissions
on [% terms.bug %]&nbsp;[% original_bug_id %] (the original) are currently set
such that the reporter would not normally be able to see it.
</p>
<p>
<b>Adding the reporter to the CC list of bug [% original_bug_id %]
<b>Adding the reporter to the CC list of [% terms.bug %]&nbsp;[% original_bug_id %]
[% IF cclist_accessible %]
will immediately
[% ELSE %]
might, in the future,
[% END %]
allow him/her access to view this bug.</b>
allow him/her access to view this [% terms.bug %].</b>
Do you wish to do this?
</p>
<form method="post" action="process_bug.cgi">
[% PROCESS "global/hidden-fields.html.tmpl" exclude="^Bugzilla_(login|password)$" %]
<p>
<input type="radio" name="confirm_add_duplicate" value="1">
Yes, add the reporter to CC list on bug [% original_bug_id %]
<input type="radio" name="confirm_add_duplicate" value="1">
Yes, add the reporter to CC list on [% terms.bug %]&nbsp;[% original_bug_id %]
</p>
<p>
<input type="radio" name="confirm_add_duplicate" value="0" checked="checked">
No, do not add the reporter to CC list on bug [% original_bug_id %]
<input type="radio" name="confirm_add_duplicate" value="0" checked="checked">
No, do not add the reporter to CC list on [% terms.bug %]&nbsp;[% original_bug_id %]
</p>
<p>
<a href="show_bug.cgi?id=[% duplicate_bug_id %]">Throw away my changes,
and revisit bug [% duplicate_bug_id %]</a>
<a href="show_bug.cgi?id=[% duplicate_bug_id %]">Throw away my changes,
and revisit [% terms.bug %]&nbsp;[% duplicate_bug_id %]</a>
<p>
<input type="submit" value="Submit">
</p>

Просмотреть файл

@ -22,11 +22,13 @@
[%# INTERFACE:
# As global/header.html.tmpl.
#%]
[% PROCESS global/variables.none.tmpl %]
[% IF title_tag == "bug_processed" %]
[% title = "Bug processed" %]
[% title = "$terms.Bug processed" %]
[% ELSIF title_tag == "mid_air" %]
[% title = "Mid-air collision!" %]
[% END %]
[% PROCESS global/header.html.tmpl %]

Просмотреть файл

@ -33,7 +33,9 @@
# comments: array; all the comments on the bug.
# bug_id: number; the ID of the bug being changed.
#%]
[% PROCESS global/variables.none.tmpl %]
[% UNLESS header_done %]
[% PROCESS bug/process/header.html.tmpl %]
[% END %]
@ -41,14 +43,14 @@
<h1>Mid-air collision detected!</h1>
<p>
Someone else has made changes to this bug at the same time you were trying to.
Someone else has made changes to this [% terms.bug %] at the same time you were trying to.
The changes made were:
</p>
<p>
[% PROCESS "bug/activity/table.html.tmpl" incomplete_data=0 %]
</p>
[% IF comments.size > start_at %]
<p>
Added comments:
@ -72,8 +74,8 @@ You have the following choices:
</form>
</li>
<li>
<a href="show_bug.cgi?id=[% bug_id %]">Throw away my changes,
and revisit bug [% bug_id %]</a>
<a href="show_bug.cgi?id=[% bug_id %]">Throw away my changes,
and revisit [% terms.bug %]&nbsp;[% bug_id %]</a>
</li>
</ul>

Просмотреть файл

@ -23,10 +23,12 @@
# bug : Bug object; the next bug to show
#%]
[% PROCESS global/variables.none.tmpl %]
<hr>
<p>
The next bug in your list is bug
The next [% terms.bug %] in your list is [% terms.bug %]
<a href="show_bug.cgi?id=[% bug.bug_id %]">[% bug.bug_id %]</a>:
</p>

Просмотреть файл

@ -25,24 +25,26 @@
# type: string; the type of change/check that was made: "bug" when a bug
# is changed, "dupe" when a duplication notation is added to a bug,
# and "dep" when a bug is checked for changes to its dependencies.
#
#
# mailrecipients: hash; BugMail recipient params. Optional.
#%]
[% PROCESS global/variables.none.tmpl %]
[% UNLESS header_done %]
[% PROCESS bug/process/header.html.tmpl %]
[% END %]
[% DEFAULT type="bug" %]
[%
[%
title = {
'bug' => "Changes submitted for bug $id" ,
'dupe' => "Duplicate notation added to bug $id" ,
'dep' => "Checking for dependency changes on bug $id" ,
'votes' => "Bug $id confirmed by number of votes" ,
'created' => "Bug $id has been added to the database" ,
}
'bug' => "Changes submitted for $terms.bug $id" ,
'dupe' => "Duplicate notation added to $terms.bug $id" ,
'dep' => "Checking for dependency changes on $terms.bug $id" ,
'votes' => "$terms.Bug $id confirmed by number of votes" ,
'created' => "$terms.Bug $id has been added to the database" ,
}
%]
<table border="1">
@ -52,7 +54,7 @@
[% PROCESS "bug/process/bugmail.html.tmpl" mailing_bugid = id %]
</td>
<td>
<a href="show_bug.cgi?id=[% id %]">Back To BUG# [% id %]</a>
<a href="show_bug.cgi?id=[% id %]">Back To [% terms.Bug %]# [% id %]</a>
</td>
</tr>
</table>

Просмотреть файл

@ -22,7 +22,7 @@
[%# INTERFACE:
# form: hash; the form values submitted to the script
# mform: hash; the form multi-values submitted to the script
# verify_fields: boolean; whether or not to verify
# verify_fields: boolean; whether or not to verify
# the version, component, and target milestone fields
# versions: array; versions for the new product.
# components: array; components for the new product.
@ -31,13 +31,15 @@
# those fields
# verify_bug_group: boolean; whether or not to ask the user
# if they want to add the bug to its new product's group
# use_target_milestone: boolean; whether or not to use
# use_target_milestone: boolean; whether or not to use
# the target milestone field
#%]
[% PROCESS global/variables.none.tmpl %]
<form action="process_bug.cgi" method="post">
[% PROCESS "global/hidden-fields.html.tmpl"
[% PROCESS "global/hidden-fields.html.tmpl"
exclude=(verify_fields ? "^version|component|target_milestone$" : "") %]
[%# Verify the version, component, and target milestone fields. %]
@ -46,12 +48,12 @@
<p>
[% IF use_target_milestone %]
You are moving the bug(s) to the product <b>[% form.product %]</b>,
You are moving the [% terms.bug %](s) to the product <b>[% form.product %]</b>,
and the version, component, and/or target milestone fields are no longer
correct. Please set the correct version, component, and target milestone now:
[% ELSE %]
You are moving the bug(s) to the product <b>[% form.product %]</b>,
and the version and component fields are no longer correct.
You are moving the [% terms.bug %](s) to the product <b>[% form.product %]</b>,
and the version and component fields are no longer correct.
Please set the correct version and component now:
[% END %]
<p>
@ -76,19 +78,19 @@
</table>
[% END %]
[% IF verify_bug_group %]
<h3>Verify Bug Group</h3>
<h3>Verify [% terms.Bug %] Group</h3>
<p>
Do you want to add the bug to its new product's default groups (if any)?
Do you want to add the [% terms.bug %] to its new product's default groups (if any)?
</p>
<p>
<input type="radio" name="addtonewgroup" value="no"><b>no</b><br>
<input type="radio" name="addtonewgroup" value="yes"><b>yes</b><br>
<input type="radio" name="addtonewgroup" value="yesifinold" checked="checked">
<b>yes, but only if the bug was in any of its old product's default groups</b><br>
<b>yes, but only if the [% terms.bug %] was in any of its old product's default groups</b><br>
</p>
[% END %]

Просмотреть файл

@ -20,8 +20,10 @@
# Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/header.html.tmpl
title = "Full Text Bug Listing"
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Full Text $terms.Bug Listing"
style_urls = [ "css/show_multiple.css" ]
%]
[% PROCESS bug/time.html.tmpl %]
@ -31,7 +33,7 @@
[% END %]
[% ELSE %]
<p>
You'd have more luck if you gave me some bug numbers.
You'd have more luck if you gave me some [% terms.bug %] numbers.
</p>
[% END %]
@ -47,54 +49,54 @@
<img alt="" src="1x1.gif" width="1" height="80" align="left">
<div align="center">
<b>
<font size="+3">Bug [% bug.bug_id %] - [% bug.short_desc FILTER html %]</font>
<font size="+3">[% terms.Bug %]&nbsp;[% bug.bug_id %] - [% bug.short_desc FILTER html %]</font>
</b>
</div>
<table width="100%">
<tr>
<td>
<b>Bug#:</b>
<b>[% terms.Bug %]#:</b>
<a href="show_bug.cgi?id=[% bug.bug_id %]">[% bug.bug_id %]</a>
</td>
[% PROCESS cell attr = { description => "Product",
[% PROCESS cell attr = { description => "Product",
name => "product" } %]
[% PROCESS cell attr = { description => "Version",
[% PROCESS cell attr = { description => "Version",
name => "version" } %]
[% PROCESS cell attr = { description => "Platform",
[% PROCESS cell attr = { description => "Platform",
name => "rep_platform" } %]
</tr>
<tr>
[% PROCESS cell attr = { description => "OS/Version",
[% PROCESS cell attr = { description => "OS/Version",
name => "op_sys" } %]
[% PROCESS cell attr = { description => "Status",
[% PROCESS cell attr = { description => "Status",
name => "bug_status" } %]
[% PROCESS cell attr = { description => "Severity",
[% PROCESS cell attr = { description => "Severity",
name => "bug_severity" } %]
[% PROCESS cell attr = { description => "Priority",
[% PROCESS cell attr = { description => "Priority",
name => "priority" } %]
</tr>
<tr>
[% PROCESS cell attr = { description => "Resolution",
[% PROCESS cell attr = { description => "Resolution",
name => "resolution" } %]
[% PROCESS cell attr = { description => "Assigned To",
[% PROCESS cell attr = { description => "Assigned To",
name => "assigned_to" } %]
[% PROCESS cell attr = { description => "Reported By",
[% PROCESS cell attr = { description => "Reported By",
name => "reporter" } %]
[% IF Param('useqacontact') %]
[% PROCESS cell attr = { description => "QA Contact",
[% PROCESS cell attr = { description => "QA Contact",
name => "qa_contact" } %]
[% END %]
</tr>
<tr>
<td colspan="2">
<b>Component:</b>&nbsp;
[% bug.component %]
</td>
<td colspan="2">
[% IF Param('usetargetmilestone') %]
<b>Target Milestone:</b>&nbsp;
@ -102,20 +104,20 @@
[% END %]
</td>
</tr>
<tr>
<td colspan="4">
<b>URL:</b>&nbsp;
<a href="[% bug.bug_file_loc FILTER html %]">
[% bug.bug_file_loc FILTER html %]</a>
[% bug.bug_file_loc FILTER html %]</a>
</tr>
<tr>
<td colspan="4">
<b>Summary:</b>&nbsp;[% bug.short_desc FILTER html %]
</td>
</tr>
[% IF use_keywords %]
<tr>
<td colspan="4">
@ -140,7 +142,7 @@
[% PROCESS formattimeunit time_unit=bug.estimated_time %]
&nbsp;
<b>Current Est.:</b>&nbsp;
[% PROCESS formattimeunit
[% PROCESS formattimeunit
time_unit=(bug.remaining_time + bug.actual_time) %]
&nbsp;
<b>Hours Worked:</b>&nbsp;
@ -149,10 +151,10 @@
[% PROCESS formattimeunit time_unit=bug.remaining_time %]
&nbsp;
<b>Percentage Complete:</b>&nbsp;
[% PROCESS calculatepercentage act=bug.actual_time
[% PROCESS calculatepercentage act=bug.actual_time
rem=bug.remaining_time %]&nbsp;
<b>Gain</b>&nbsp;
[% PROCESS formattimeunit
[% PROCESS formattimeunit
time_unit=bug.estimated_time - (bug.actual_time + bug.remaining_time) %]
&nbsp;
</td>
@ -172,9 +174,9 @@
</tr>
</table>
[% PROCESS bug/comments.html.tmpl
[% PROCESS bug/comments.html.tmpl
comments = bug.comments %]
<hr>
[% END %]

Просмотреть файл

@ -21,14 +21,16 @@
# Bradley Baetz <bbaetz@student.usyd.edu.au>
#%]
[% PROCESS global/variables.none.tmpl %]
[%# This script/template only handles one bug #%]
[% bug = bugs.0 %]
[% filtered_desc = bug.short_desc FILTER html %]
[% filtered_timestamp = bug.delta_ts FILTER time %]
[% PROCESS global/header.html.tmpl
title = "Bug $bug.bug_id - $bug.short_desc"
h1 = "Bugzilla Bug $bug.bug_id"
[% PROCESS global/header.html.tmpl
title = "$terms.Bug $bug.bug_id - $bug.short_desc"
h1 = "$terms.Bugzilla $terms.Bug $bug.bug_id"
h2 = filtered_desc
h3 = "Last modified: $filtered_timestamp"
style_urls = [ "css/edit_bug.css" ]

Просмотреть файл

@ -20,16 +20,18 @@
#%]
[%# INTERFACE:
# This template has no interface.
# This template has no interface.
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Remove your votes?"
%]
<p>
You are about to remove all of your bug votes. Are you sure you wish to
remove your vote from every bug you've voted on?
You are about to remove all of your [% terms.bug %] votes. Are you sure you wish to
remove your vote from every [% terms.bug %] you've voted on?
</p>
<form action="votes.cgi" method="post">

Просмотреть файл

@ -24,14 +24,16 @@
# users: list of hashes. May be empty. Each hash has two members:
# name: string. The login name of the user whose vote is attached
# count: integer. The number of times that user has votes for this bug.
# total: integer. The total number of votes for this bug.
# total: integer. The total number of votes for this bug.
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Show Votes"
h2 = "Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
h2 = "$terms.Bug <a href=\"show_bug.cgi?id=$bug_id\">$bug_id</a>"
%]
<table cellspacing="4">
<tr>
<th>Who</th>

Просмотреть файл

@ -19,6 +19,8 @@
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Show Votes"
h2 = voting_user.name
@ -42,7 +44,7 @@
<table cellspacing="4">
<tr>
<td></td>
<th>Bug #</th>
<th>[% terms.Bug %] #</th>
<th>Summary</th>
<th>Votes</th>
</tr>
@ -63,7 +65,7 @@
<td>
<font size="-1">
(Note: only [% product.maxperbug %] vote
[% "s" IF product.maxperbug != 1 %] allowed per bug in
[% "s" IF product.maxperbug != 1 %] allowed per [% terms.bug %] in
this product.)
</font>
</td>
@ -90,7 +92,7 @@
<input type="checkbox" name="[% bug.id %]" value="1"
[% " checked" IF bug.count %]>
[% ELSE %]
<input name="[% bug.id %]" value="[% bug.count %]"
<input name="[% bug.id %]" value="[% bug.count %]"
size="2">
[% END %]
[% ELSE %]
@ -125,7 +127,7 @@
change the checkbox
[% END %]
and then click <b>Change My Votes</b>.
[% END %]
[% END %]
</form>
[% ELSE %]
<p>
@ -134,7 +136,7 @@
[% ELSE %]
This user is
[% END %]
currently not voting on any bugs.
currently not voting on any [% terms.bugs %].
</p>
[% END %]

Просмотреть файл

@ -22,12 +22,14 @@
[%# Migration note: this file corresponds to the old Param 'bannerhtml' %]
[% PROCESS global/variables.none.tmpl %]
<table bgcolor="#000000" width="100%" border="0" cellpadding="0"
cellspacing="0">
<tr>
<td>
<center><font color="#FFFFFF" size="8">
This is Bugzilla
This is [% terms.Bugzilla %]
</font></center>
</td>
</tr>

Просмотреть файл

@ -24,11 +24,13 @@
# are their descriptions.
#%]
[% PROCESS global/variables.none.tmpl %]
[% IF target == "enter_bug.cgi" %]
[% title = "Enter Bug" %]
[% h2 = "First, you must pick a product on which to enter a bug." %]
[% title = "Enter $terms.Bug" %]
[% h2 = BLOCK %]First, you must pick a product on which to enter [% terms.abug %]. [% END %]
[% ELSIF target == "describecomponents.cgi" %]
[% title = "Bugzilla Component Descriptions" %]
[% title = "$terms.Bugzilla Component Descriptions" %]
[% h2 = "Please specify the product whose components you want described." %]
[% END %]
@ -50,7 +52,7 @@
[% END %]
</tr>
[% END %]
</table>
[% PROCESS global/footer.html.tmpl %]

Просмотреть файл

@ -25,16 +25,18 @@
# variables: hash. Useful data about the problem. The keys are the variable
# names, and the values the variable values.
#%]
[%# This is a list of all the possible code errors. Please keep them in
# alphabetical order by error tag, and leave a blank line between errors.
#%]
#%]
[% PROCESS global/variables.none.tmpl %]
[% DEFAULT title = "Internal Error" %]
[% error_message = BLOCK %]
[% IF error == "aaa_example_error_tag" %]
[% title = "Example Error" %]
[% title = "Example Error" %]
This is an example error. The title is set above. This text is the body
of the error. It can contain arbitrary <b>HTML</b>, and also references
to any [% parameters %] which you may have set before calling
@ -59,11 +61,11 @@
An authorization handler return value was not handled by the login code.
[% ELSIF error == "bug_error" %]
Trying to retrieve bug [% bug.bug_id %] returned the error
Trying to retrieve [% terms.bug %] [%+ bug.bug_id %] returned the error
[% bug.error FILTER html %]
[% ELSIF error == "chart_data_not_generated" %]
The tool which gathers bug counts has not been run yet.
The tool which gathers [% terms.bug %] counts has not been run yet.
[% ELSIF error == "chart_datafile_corrupt" %]
The chart data file [% file FILTER html %] is corrupt.
@ -82,7 +84,7 @@
[% ELSIF error == "field_type_mismatch" %]
Cannot seem to handle <code>[% field %]</code>
and <code>[% type FILTER html %]</code> together.
[% ELSIF error == "gd_not_installed" %]
Charts will not work without the GD Perl module being installed.
Run checksetup.pl for installation instructions.
@ -93,17 +95,17 @@
[% ELSIF error == "illegal_content_type_method" %]
Your form submission got corrupted somehow. The <em>content
method</em> field, which specifies how the content type gets determined,
should have been either <em>autodetect</em>, <em>list</em>,
or <em>manual</em>, but was instead
should have been either <em>autodetect</em>, <em>list</em>,
or <em>manual</em>, but was instead
<em>[% contenttypemethod FILTER html %]</em>.
[% ELSIF error == "illegal_field" %]
A legal [% field FILTER html %] was not set.
[% ELSIF error == "inactive_group" %]
Attempted to add bug to an inactive group, identified by the bit
Attempted to add [% terms.bug %] to an inactive group, identified by the bit
'[% bit FILTER html %]'.
[% ELSIF error == "bad_arg" %]
Bad argument <code>[% argument %]</code> sent to
<code>[% function %]</code> function.
@ -139,12 +141,12 @@
[% ELSIF error == "mismatched_bug_ids_on_obsolete" %]
Attachment [% attach_id FILTER html %] ([% description FILTER html %])
is attached to bug [% attach_bug_id FILTER html %], but you tried to
flag it as obsolete while creating a new attachment to bug
[% my_bug_id FILTER html %].
is attached to [% terms.bug %] [%+ attach_bug_id FILTER html %],
but you tried to flag it as obsolete while creating a new attachment to
[% terms.bug %] [%+ my_bug_id FILTER html %].
[% ELSIF error == "no_bug_data" %]
No data when fetching bug [% bug_id %].
No data when fetching [% terms.bug %] [%+ bug_id %].
[% ELSIF error == "flag_nonexistent" %]
There is no flag with ID #[% variables.id %].
@ -170,7 +172,7 @@
The product <em>[% variables.product FILTER html %]</em> does not exist.
[% ELSIF error == "flag_type_target_type_invalid" %]
The target type was neither <em>bug</em> nor <em>attachment</em>
The target type was neither <em>[% terms.bug %]</em> nor <em>attachment</em>
but rather <em>[% variables.target_type FILTER html %]</em>.
[% ELSIF error == "invalid_field_name" %]
@ -181,7 +183,7 @@
Invalid output type [% type FILTER html %].
[% ELSIF error == "missing_bug_id" %]
No bug ID was given.
No [% terms.bug %] ID was given.
[% ELSIF error == "missing_series_id" %]
Having inserted a series into the database, no series_id was returned for
@ -200,7 +202,7 @@
The group field <em>[% group FILTER html %]</em> is invalid.
[% ELSIF error == "report_axis_invalid" %]
<em>[% variables.val FILTER html %]</em> is not a valid value for
<em>[% variables.val FILTER html %]</em> is not a valid value for
[%+ IF variables.fld == "x" %]the horizontal axis
[%+ ELSIF variables.fld == "y" %]the vertical axis
[%+ ELSIF variables.fld == "z" %]the multiple tables/images
@ -214,7 +216,7 @@
[% ELSIF error == "unable_to_retrieve_password" %]
I was unable to retrieve your old password from the database.
[% ELSIF error == "undefined_field" %]
[% field FILTER html %] was not defined; [% Param('browserbugmessage') %]
@ -224,7 +226,7 @@
[% ELSE %]
I could not figure out what you wanted to do.
[% END %]
[% ELSIF error == "unknown_component" %]
[% title = "Unknown Component" %]
There is no component named <em>[% variables.component FILTER html %]</em>.
@ -235,12 +237,12 @@
[% ELSE %]
[%# Give sensible error if error functions are used incorrectly.
#%]
You are using Bugzilla's ThrowCodeError() function incorrectly. You
#%]
You are using [% terms.Bugzilla %]'s ThrowCodeError() function incorrectly. You
passed in the string '[% error %]'. The correct use is to pass
in a tag, and define that tag in the file code-error.html.tmpl.<br>
<br>
If you are a Bugzilla end-user seeing this message, please save this
If you are a [% terms.Bugzilla %] end-user seeing this message, please save this
page and send it to [% Param('maintainer') %].
[% END %]
[% END %]
@ -251,8 +253,8 @@
<tt>
<p>
Bugzilla has suffered an internal error. Please save this page and send
it to [% Param("maintainer") %] with details of what you were doing at
[% terms.Bugzilla %] has suffered an internal error. Please save this page and send
it to [% Param("maintainer") %] with details of what you were doing at
the time this message appeared.
</p>
<script type="text/javascript"> <!--

Просмотреть файл

@ -20,12 +20,14 @@
#%]
[%# Remember to PROCESS rather than INCLUDE this template. %]
[% field_descs = { "[Bug creation]" => "[Bug creation]",
[% PROCESS global/variables.none.tmpl %]
[% field_descs = { "[Bug creation]" => "[$terms.Bug creation]",
"alias" => "Alias",
"assigned_to" => "Assignee",
"bug_file_loc" => "URL",
"bug_id" => "Bug ID",
"bug_id" => "$terms.Bug ID",
"bug_severity" => "Severity",
"bug_status" => "Status",
"changeddate" => "Last Changed Date",
@ -33,7 +35,7 @@
"cclist_accessible" => "CC list accessible?",
"component_id" => "Component ID",
"component" => "Component",
"creation_ts" => "Bug Creation time",
"creation_ts" => "$terms.Bug Creation time",
"delta_ts" => "Last Changed time",
"estimated_time" => "Orig. Est.",
"everconfirmed" => "Ever confirmed?",

Просмотреть файл

@ -25,11 +25,11 @@
#%]
[% INCLUDE "global/help.html.tmpl" %]
[%# Migration note: below this point, this file corresponds to the old Param
# 'footerhtml'
# 'footerhtml'
#%]
<table border="0">
<tr>
<td bgcolor="#000000" valign="top">
@ -37,7 +37,7 @@
bgcolor="lightyellow">
<tr>
<td>
[%# Migration note: the old param 'blurbhtml' goes here %]
[%# Migration note: useful-links.html.tmpl corresponds to %commandmenu% %]
@ -50,6 +50,5 @@
</td>
</tr>
</table>
</body>
</html>

Просмотреть файл

@ -40,7 +40,7 @@
[% DEFAULT
h2 = ""
h3 = ""
h3 = ""
bgcolor = "#ffffff"
onload = ""
%]
@ -58,33 +58,33 @@
<html>
<head>
<title>[% title FILTER html %]</title>
[%# Migration note: contents of the old Param 'headerhtml' would go here %]
[% PROCESS "global/site-navigation.html.tmpl" %]
[% IF javascript %]
<script type="text/javascript" language="JavaScript">
[% javascript %]
</script>
[% END %]
[%+ INCLUDE "global/help-header.html.tmpl" %]
[%+ INCLUDE "global/help-header.html.tmpl" %]
[% IF style %]
<style type="text/css">
[% style %]
</style>
[% END %]
[% IF style_urls %]
[% FOREACH style_url = style_urls %]
<link href="[% style_url %]" rel="stylesheet" type="text/css">
[% END %]
[% END %]
</head>
[%# Migration note: contents of the old Param 'bodyhtml' go in the body tag,
# but set the bgcolor and onload attributes in the DEFAULT directive above.
#%]
@ -94,9 +94,9 @@
[%# Migration note: the following file corresponds to the old Param
# 'bannerhtml'
#%]
[% INCLUDE global/banner.html.tmpl %]
[% IF h1 || h2 %]
<table border="0" cellspacing="0" width="100%">
<tr>

Просмотреть файл

@ -26,17 +26,17 @@
# exclude: string; a regular expression matching fields to exclude
# from the list of hidden fields generated by this template
#%]
[%# Generate hidden form fields for non-excluded fields. %]
[% FOREACH field = form %]
[% NEXT IF exclude && field.key.search(exclude) %]
[% IF mform.${field.key}.size > 1 %]
[% FOREACH mvalue = mform.${field.key} %]
<input type="hidden" name="[% field.key FILTER html %]"
value="[% mvalue | html | html_linebreak %]">
value="[% mvalue FILTER html FILTER html_linebreak %]">
[% END %]
[% ELSE %]
<input type="hidden" name="[% field.key FILTER html %]"
value="[% field.value | html | html_linebreak %]">
value="[% field.value FILTER html FILTER html_linebreak %]">
[% END %]
[% END %]

Просмотреть файл

@ -18,13 +18,15 @@
#
# Contributor(s):
#%]
[%# INTERFACE:
# url: string. An optional URL to go to.
# link: string. The link text for that URL.
#%]
[% DEFAULT title = "Bugzilla Message" %]
[% PROCESS global/variables.none.tmpl %]
[% DEFAULT title = "$terms.Bugzilla Message" %]
[% PROCESS global/header.html.tmpl %]

Просмотреть файл

@ -18,11 +18,13 @@
#
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[%# This is a list of all the possible messages. Please keep them in
# alphabetical order by message tag, and leave a blank line between messages.
#%]
#%]
[% PROCESS global/variables.none.tmpl %]
[% message_tag = message %]
[% message = BLOCK %]
@ -83,12 +85,12 @@
[% url = "query.cgi?GoAheadAndLogIn=1" %]
[% link = "Log in again." %]
<b>Your login has been forgotten</b>.
The cookie that was remembering your login is now gone. You will be
The cookie that was remembering your login is now gone. You will be
prompted for a login the next time it is required.
[% ELSIF message_tag == "login_changed" %]
[% title = "Bugzilla Login Changed" %]
Your Bugzilla login has been changed.
[% title = "$terms.Bugzilla Login Changed" %]
Your [% terms.Bugzilla %] login has been changed.
[% ELSIF message_tag == "password_change_canceled" %]
[% title = "Cancel Request to Change Password" %]
@ -155,18 +157,18 @@
<a href="query.cgi?format=create-series">create another series</a>.
[% ELSIF message_tag == "shutdown" %]
[% title = "Bugzilla is Down" %]
[% title = "$terms.Bugzilla is Down" %]
[% Param("shutdownhtml") %]
[% ELSE %]
[%# Give sensible error if error functions are used incorrectly.
#%]
You are using Bugzilla's messaging functions incorrectly. You
You are using [% terms.Bugzilla %]'s messaging functions incorrectly. You
passed in the string '[% message_tag %]'. The correct use is to pass
in a tag, and define that tag in the file messages.html.tmpl.<br>
<br>
If you are a Bugzilla end-user seeing this message, please save this
page and send it to [% Param('maintainer') %].
If you are a [% terms.Bugzilla %] end-user seeing this message, please
save this page and send it to [% Param('maintainer') %].
[% END %]
[% END %]

Просмотреть файл

@ -21,10 +21,12 @@
#%]
[%# INTERFACE:
# bug_list: list of integers. List of bug numbers of current query (if any).
# bug_list: list of integers. List of bug numbers of current query (if any).
# bug.bug_id: integer. Number of current bug (for navigation purposes)
#%]
[% PROCESS global/variables.none.tmpl %]
[% USE Bugzilla %]
[% cgi = Bugzilla.cgi %]
@ -56,14 +58,14 @@
<link rel="Show" title="Dependency Tree"
href="showdependencytree.cgi?id=[% bug.bug_id %]">
<link rel="Show" title="Dependency Graph"
href="showdependencygraph.cgi?id=[% bug.bug_id %]">
href="showdependencygraph.cgi?id=[% bug.bug_id %]">
[% IF use_votes %]
<link rel="Show" title="Votes ([% bug.votes %])"
href="votes.cgi?action=show_bug&amp;bug_id=[% bug.bug_id %]">
[% END %]
<link rel="Show" title="Bug Activity"
<link rel="Show" title="[% terms.Bug %] Activity"
href="show_activity.cgi?id=[% bug.bug_id %]">
<link rel="Show" title="Printer-Friendly Version"
href="long_list.cgi?buglist=[% bug.bug_id %]">
@ -73,7 +75,7 @@
[%# *** Preset Queries *** %]
[% IF user.showmybugslink %]
[% user_login = user.login FILTER url_quote %]
<link rel="Preset&nbsp;Queries" title="My Bugs"
<link rel="Preset&nbsp;Queries" title="My [% terms.Bugs %]"
href="[% Param('mybugstemplate').replace('%userid%', user_login) %]">
[% END %]

Просмотреть файл

@ -22,6 +22,8 @@
[%# Migration note: this whole file corresponds to the old %commandmenu%
substitution param in 'footerhtml' %]
[% PROCESS global/variables.none.tmpl %]
<form method="get" action="show_bug.cgi">
<table width="100%">
<tr>
@ -33,7 +35,7 @@
<a href="enter_bug.cgi">New</a> |
<a href="query.cgi">Query</a> |
<input type="submit" value="Find"> bug #
<input type="submit" value="Find"> [% terms.bug %] #
<input name="id" size="6"> |
<a href="report.cgi">Reports</a>
@ -97,7 +99,7 @@
<td colspan="3">
[% IF user.showmybugslink %]
[% filtered_username = user.login FILTER url_quote %]
<a href="[% Param('mybugstemplate').replace('%userid%', filtered_username) %]">My&nbsp;Bugs</a>
<a href="[% Param('mybugstemplate').replace('%userid%', filtered_username) %]">My&nbsp;[% terms.Bugs %]</a>
[% print_pipe = 1 %]
[% END %]
@ -106,20 +108,20 @@
[% " | " IF print_pipe %]
<a href="buglist.cgi?cmdtype=runnamed&amp;namedcmd=[% q.name FILTER url_quote %]"><nobr>[% q.name FILTER html %]</nobr></a>
[% print_pipe = 1 %]
[% END %]
[% END %]
[% END %]
</td>
</tr>
[% ELSE %]
[% ELSE %]
<td valign="middle" align="right">
[% IF Param('createemailregexp') %]
<a href="createaccount.cgi">New&nbsp;Account</a> |
<a href="createaccount.cgi">New&nbsp;Account</a> |
[% END %]
<a href="query.cgi?GoAheadAndLogIn=1">Log&nbsp;In</a>
</td>
</tr>
[% END %]
</table>
</table>
</form>

Просмотреть файл

@ -27,10 +27,12 @@
[%# This is a list of all the possible user errors. Please keep them in
# alphabetical order by error tag, and leave a blank line between errors.
#%]
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS "global/field-descs.none.tmpl" %]
[% DEFAULT title = "Error" %]
[% error_message = BLOCK %]
@ -44,9 +46,9 @@
[% title = "Account Disabled" %]
[% disabled_reason %]
<hr>
If you believe your account should be restored, please
If you believe your account should be restored, please
send email to [% Param("maintainer") %] explaining why.
[% ELSIF error == "account_exists" %]
[% title = "Account Already Exists" %]
There is already an account with
@ -55,10 +57,10 @@
[% ELSE %]
that login name.
[% END %]
[% ELSIF error == "account_inexistent" %]
[% title = "Account Does Not Exist" %]
There is no Bugzilla account with that login name.
There is no [% terms.Bugzilla %] account with that login name.
[% ELSIF error == "alias_has_comma_or_space" %]
[% title = "Invalid Characters In Alias" %]
@ -67,22 +69,22 @@
commas or spaces because those characters are used to separate
aliases from each other in lists. Please choose another alias
that does not contain commas and spaces.
[% ELSIF error == "alias_in_use" %]
[% title = "Alias In Use" %]
[% bug_link %] has already taken the alias
[% bug_link %] has already taken the alias
<em>[% alias FILTER html %]</em>. Please choose another one.
[% ELSIF error == "alias_is_numeric" %]
[% title = "Alias Is Numeric" %]
You tried to give this bug the alias <em>[% alias FILTER html %]</em>,
You tried to give this [% terms.bug %] the alias <em>[% alias FILTER html %]</em>,
but aliases cannot be merely numbers, since they could
then be confused with bug IDs. Please choose another
alias containing at least one letter.
then be confused with [% terms.bug %] IDs. Please choose another
alias containing at least one letter.
[% ELSIF error == "alias_too_long" %]
[% title = "Alias Too Long" %]
Bug aliases cannot be longer than 20 characters.
[% terms.Bug %] aliases cannot be longer than 20 characters.
Please choose a shorter alias.
[% ELSIF error == "auth_cant_create_account" %]
@ -98,34 +100,35 @@
[% ELSIF error == "attachment_access_denied" %]
[% title = "Access Denied" %]
You are not authorized to access this attachment.
[% ELSIF error == "bug_access_denied" %]
[% title = "Access Denied" %]
You are not authorized to access bug #[% bug_id %].
You are not authorized to access [% terms.bug %] #[% bug_id %].
[% ELSIF error == "bug_access_query" %]
[% title = "Access Denied" %]
You are not authorized to access bug #[% bug_id %]. To see this bug, you
must first <a href="show_bug.cgi?id=[% bug_id %]&amp;GoAheadAndLogIn=1">log
You are not authorized to access [% terms.bug %] #[% bug_id %]. To see
this [% terms.bug %], you must
first <a href="show_bug.cgi?id=[% bug_id %]&amp;GoAheadAndLogIn=1">log
in to an account</a> with the appropriate permissions.
[% ELSIF error == "buglist_parameters_required" %]
[% title = "Parameters Required" %]
[% url = "query.cgi" %]
[% link = "Please use the search form to specify some search criteria." %]
This script is not meant to be invoked without any search terms.
[% ELSIF error == "bugs_not_changed" %]
[% title = "Bugs Not Changed" %]
Um, you apparently did not change anything on the selected bugs.
[% title = BLOCK %][% terms.Bugs %] Not Changed[% END %]
Um, you apparently did not change anything on the selected [% terms.bugs %].
[% ELSIF error == "chart_too_large" %]
[% title = "Chart Too Large" %]
Sorry, but 2000 x 2000 is the maximum size for a chart.
[% ELSIF error == "comment_required" %]
[% title = "Comment Required" %]
You have to specify a <b>comment</b> on this change.
You have to specify a <b>comment</b> on this change.
Please give some words on the reason for your change.
[% ELSIF error == "comment_too_long" %]
@ -134,43 +137,43 @@
[% ELSIF error == "dependency_loop_multi" %]
[% title = "Dependency Loop Detected" %]
The following bug(s) would appear on both the "depends on"
The following [% terms.bug %](s) would appear on both the "depends on"
and "blocks" parts of the dependency tree if these changes
are committed: [% both %]. This would create a circular
are committed: [% both %]. This would create a circular
dependency, which is not allowed.
[% ELSIF error == "dependency_loop_single" %]
[% title = "Dependency Loop Detected" %]
You can't make a bug blocked or dependent on itself.
You can't make [% terms.abug %] blocked or dependent on itself.
[% ELSIF error == "dupe_invalid_bug_id" %]
[% title = "Valid Bug Number Required" %]
You must specify a valid bug number of which this bug
is a duplicate. The bug has not been changed.
[% title = BLOCK %]Valid [% terms.Bug %] Number Required[% END %]
You must specify a valid bug number of which this [% terms.bug %]
is a duplicate. The [% terms.bug %] has not been changed.
[% ELSIF error == "dupe_of_self_disallowed" %]
[% title = "Nice Try..." %]
Nice try, [% user.login FILTER html %], but it doesn't
really make sense to mark a bug as a duplicate of itself,
Nice try, [% user.login FILTER html %], but it doesn't
really make sense to mark [% terms.abug %] as a duplicate of itself,
does it?
[% ELSIF error == "email_change_in_progress" %]
[% title = "Email Change Already In Progress" %]
Email change already in progress; please check your email.
Email change already in progress; please check your email.
[% ELSIF error == "email_confirmation_failed" %]
[% title = "Email Address Confirmation Failed" %]
Email address confirmation failed.
[% ELSIF error == "entry_access_denied" %]
[% title = "Permission Denied" %]
Sorry; you do not have the permissions necessary to enter a bug against
Sorry; you do not have the permissions necessary to enter [% terms.abug %] against
the [% product FILTER html %] product.
[% ELSIF error == "file_not_specified" %]
[% title = "No File Specified" %]
You did not specify a file to attach.
[% ELSIF error == "file_too_large" %]
[% title = "File Too Large" %]
The file you are trying to attach is [% filesize %] kilobytes (KB) in size.
@ -178,37 +181,37 @@
KB.
If your attachment is an image, try converting it to a compressable
format like JPG or PNG, or put it elsewhere on the web and
link to it from the bug's URL field or in a comment on the bug.
link to it from the [% terms.bug %]'s URL field or in a comment on the [% terms.bug %].
[% ELSIF error == "flag_requestee_unauthorized" %]
[% title = "Flag Requestee Not Authorized" %]
You asked [% requestee.identity FILTER html %]
for <code>[% flag_type.name FILTER html %]</code> on bug [% bug_id -%]
[% IF attach_id %], attachment [% attach_id %][% END %], but that bug
for <code>[% flag_type.name FILTER html %]</code> on [% terms.bug %] [% bug_id -%]
[% IF attach_id %], attachment [% attach_id %][% END %], but that [% terms.bug %]&bnsp;
has been restricted to users in certain groups, and the user you asked
isn't in all the groups to which the bug has been restricted.
Please choose someone else to ask, or make the bug accessible to users
isn't in all the groups to which the [% terms.bug %] has been restricted.
Please choose someone else to ask, or make the [% terms.bug %] accessible to users
on its CC: list and add that user to the list.
[% ELSIF error == "flag_requestee_unauthorized_attachment" %]
[% title = "Flag Requestee Not Authorized" %]
You asked [% requestee.identity FILTER html %]
for <code>[% flag_type.name FILTER html %]</code> on bug [% bug_id %],
attachment [% attach_id %], but that attachment is restricted to users
for <code>[% flag_type.name FILTER html %]</code> on [% terms.bug %]&nbsp;[% bug_id %],
attachment [% attach_id %], but that attachment is restricted to users
in the [% Param("insidergroup") FILTER html %] group, and the user
you asked isn't in that group. Please choose someone else to ask,
or ask an administrator to add the user to the group.
[% ELSIF error == "flag_type_cc_list_invalid" %]
[% title = "Flag Type CC List Invalid" %]
The CC list [% cc_list FILTER html %] must be less than 200 characters long.
[% ELSIF error == "flag_type_description_invalid" %]
[% title = "Flag Type Description Invalid" %]
The description must be less than 32K.
[% ELSIF error == "flag_type_name_invalid" %]
[% title = "Flag Type Name Invalid" %]
The name <em>[% name FILTER html %]</em> must be 1-50 characters long.
@ -234,7 +237,7 @@
[% ELSIF error == "illegal_attachment_edit_bug" %]
[% title = "Unauthorised Action" %]
You are not authorised to edit attachments on bug [% bug_id %].
You are not authorised to edit attachments on [% terms.bug %] [%+ bug_id %].
[% ELSIF error == "illegal_attachment_is_patch" %]
[% title = "Your Query Makes No Sense" %]
@ -246,7 +249,7 @@
You tried to change the <strong>[% field %]</strong> field
from <em>[% oldvalue FILTER html %]</em> to
<em>[% newvalue FILTER html %]</em>,
but only the owner or submitter of the bug, or a
but only the owner or submitter of the [% terms.bug %], or a
sufficiently empowered user, may change that field.
[% ELSIF error == "illegal_changed_in_last_x_days" %]
@ -304,25 +307,27 @@
[% ELSIF error == "insufficient_privs_for_multi" %]
[% title = "Insufficient Privileges" %]
Sorry, you do not have sufficient privileges to edit multiple bugs.
Sorry, you do not have sufficient privileges to edit multiple
[% terms.bugs %].
[% ELSIF error == "invalid_attach_id" %]
[% title = "Invalid Attachment ID" %]
The attachment id [% attach_id FILTER html %] is invalid.
[% ELSIF error == "invalid_bug_id" %]
[% title = "Invalid Bug ID" %]
The bug id [% bug_id FILTER html %] is invalid.
[% title = BLOCK %]Invalid [% terms.Bug %] ID[% END %]
The [% terms.bug %] id [% bug_id FILTER html %] is invalid.
[% ELSIF error == "invalid_bug_id_non_existent" %]
[% title = "Invalid Bug ID" %]
Bug #[% bug_id %] does not exist.
[% title = BLOCK %]Invalid [% terms.Bug %] ID[% END %]
[% terms.Bug %] #[% bug_id %] does not exist.
[% ELSIF error == "invalid_bug_id_or_alias" %]
[% title = "Invalid Bug ID" %]
The 'bug number' <em>[% bug_id FILTER html %]</em> is invalid.
[% title = BLOCK %]Invalid [% terms.Bug %] ID[% END %]
The '[% terms.bug %] number' <em>[% bug_id FILTER html %]</em> is invalid.
[% IF Param("usebugaliases") %]
It is neither a bug number nor an alias to a bug number.
It is neither [% terms.abug %] number nor an alias to [% terms.abug %]
number.
[% END %]
If you are trying to use QuickSearch, you need to enable JavaScript
in your browser. To help us fix this limitation, add your comments to
@ -336,10 +341,10 @@
[% ELSIF error == "invalid_content_type" %]
[% title = "Invalid Content-Type" %]
The content type <em>[% contenttype FILTER html %]</em> is invalid.
Valid types must be of the form <em>foo/bar</em> where <em>foo</em>
is either <em>application, audio, image, message, model, multipart,
Valid types must be of the form <em>foo/bar</em> where <em>foo</em>
is either <em>application, audio, image, message, model, multipart,
text,</em> or <em>video</em>.
[% ELSIF error == "invalid_maxrow" %]
[% title = "Invalid Max Rows" %]
The maximum number of rows, '[% maxrows FILTER html %]', must be a positive
@ -353,7 +358,7 @@
[% title = "Invalid Username" %]
The name <tt>[% name FILTER html %]</tt> is not a valid username.
Either you misspelled it, or the person has not
registered for a Bugzilla account.
registered for a [% terms.Bugzilla %] account.
[% ELSIF error == "invalid_username_or_password" %]
[% title = "Invalid Username Or Password" %]
@ -365,9 +370,9 @@
[% ELSIF error == "milestone_required" %]
[% title = "Milestone Required" %]
You must determine a target milestone for bug [% bug_id %]
You must determine a target milestone for [% terms.bug %] [%+ bug_id %]
if you are going to accept it. Part of accepting
a bug is giving an estimate of when it will be fixed.
[% terms.abug %] is giving an estimate of when it will be fixed.
[% ELSIF error == "misarranged_dates" %]
[% title = "Misarranged Dates" %]
@ -384,7 +389,7 @@
[% ELSIF error == "missing_content_type" %]
[% title = "Missing Content-Type" %]
You asked Bugzilla to auto-detect the content type, but
You asked [% terms.Bugzilla %] to auto-detect the content type, but
your browser did not specify a content type when uploading the file,
so you must enter a content type manually.
@ -428,7 +433,8 @@
[% ELSIF error == "need_component" %]
[% title = "Component Required" %]
You must specify a component to help determine the new owner of these bugs.
You must specify a component to help determine the new owner of these
[% terms.bugs %].
[% ELSIF error == "need_numeric_value" %]
[% title = "Numeric Value Required" %]
@ -440,8 +446,8 @@
[% ELSIF error == "need_product" %]
[% title = "Product Required" %]
You must specify a product to help determine the new owner of these bugs.
You must specify a product to help determine the new owner of these [% terms.bugs %].
[% ELSIF error == "need_quip" %]
[% title = "Quip Required" %]
Please enter a quip in the text field.
@ -449,35 +455,35 @@
[% ELSIF error == "new_password_missing" %]
[% title = "New Password Missing" %]
You must enter a new password.
[% ELSIF error == "no_axes_defined" %]
[% title = "No Axes Defined" %]
You didn't define any axes to plot.
[% ELSIF error == "no_bugs_chosen" %]
[% title = "No Bugs Chosen" %]
You apparently didn't choose any bugs to modify.
[% title = BLOCK %]No [% terms.Bugs %] Chosen[% END %]
You apparently didn't choose any [% terms.bugs %] to modify.
[% ELSIF error == "no_component_change_for_multiple_products" %]
[% title = "Action Not Permitted" %]
You cannot change the component for a list of bugs covering more than
You cannot change the component for a list of [% terms.bugs %] covering more than
one product.
[% ELSIF error == "no_components" %]
[% title = "No Components" %]
Sorry; there needs to be at least one component for this product in order
to create a new bug.
Sorry; there needs to be at least one component for this product in order
to create a new [% terms.bug %].
[% IF UserInGroup("editcomponents") %]
<a href="editcomponents.cgi">Create a new component</a>.
<a href="editcomponents.cgi">Create a new component</a>.
[% ELSE %]
Please contact [% Param("maintainer") %], giving the name of
the product in which you tried to create a new bug.
Please contact [% Param("maintainer") %], giving the name of
the product in which you tried to create a new [% terms.bug %].
[% END %]
[% ELSIF error == "no_dupe_stats" %]
[% title = "Cannot Find Duplicate Statistics" %]
There are no duplicate statistics for today ([% today %]) or yesterday.
[% ELSIF error == "no_dupe_stats_error_today" %]
[% title = "Error Reading Today's Dupes File" %]
An error occurred opening today's dupes file: [% error_msg FILTER html %].
@ -487,66 +493,66 @@
An error occurred opening [% changedsince FILTER html %] days ago
([% whenever FILTER html %])'s dupes file:
[% error_msg FILTER html %].
[% ELSIF error == "no_dupe_stats_error_yesterday" %]
[% title = "Error Reading Yesterday's Dupes File" %]
There are no duplicate statistics for today ([% today %]), and an error
occurred opening yesterday's dupes file: [% error_msg FILTER html %].
[% ELSIF error == "no_html_in_quips" %]
[% title = "No HTML In Quips" %]
Sorry - for security reasons, support for HTML tags has been turned off
Sorry - for security reasons, support for HTML tags has been turned off
in quips.
[% ELSIF error == "no_new_quips" %]
[% title = "No New Quips" %]
This site does not permit the addition of new quips.
[% ELSIF error == "no_page_specified" %]
[% title = "No Page Specified" %]
You did not specify the id of a page to display.
[% ELSIF error == "no_products" %]
[% title = "No Products" %]
Either no products have been defined to enter bugs against or you have not
Either no products have been defined to enter [% terms.bugs %] against or you have not
been given access to any.
[% ELSIF error == "old_password_incorrect" %]
[% title = "Incorrect Old Password" %]
You did not enter your old password correctly.
[% ELSIF error == "old_password_required" %]
[% title = "Old Password Required" %]
You must enter your old password to change email address.
[% ELSIF error == "passwords_dont_match" %]
[% title = "Passwords Don't Match" %]
The two passwords you entered did not match.
[% ELSIF error == "password_too_long" %]
[% title = "Password Too Long" %]
The password is more than 16 characters long. It must be no more than
The password is more than 16 characters long. It must be no more than
16 characters.
[% ELSIF error == "password_too_short" %]
[% title = "Password Too Short" %]
The password is less than three characters long. It must be at least
The password is less than three characters long. It must be at least
three characters.
[% ELSIF error == "patch_too_large" %]
[% title = "File Too Large" %]
The file you are trying to attach is [% filesize %] kilobytes (KB) in size.
Patches cannot be more than [% Param('maxpatchsize') %] KB in size.
Try breaking your patch into several pieces.
Try breaking your patch into several pieces.
[% ELSIF error == "product_access_denied" %]
[% title = "Access Denied" %]
You do not have the permissions necessary to access that product.
[% ELSIF error == "product_edit_denied" %]
[% title = "Product Edit Access Denied" %]
You are not permitted to edit bugs in product [% product %].
You are not permitted to edit [% terms.bugs %] in product [% product %].
[% ELSIF error == "query_name_missing" %]
[% title = "No Query Name Specified" %]
You must enter a name for your query.
@ -561,8 +567,8 @@
[% ELSIF error == "reassign_to_empty" %]
[% title = "Illegal Reassignment" %]
You cannot reassign to a bug to nobody. Unless you
intentionally cleared out the "Reassign bug to"
You cannot reassign to [% terms.abug %] to nobody. Unless you
intentionally cleared out the "Reassign [% terms.bug %] to"
field, [% Param("browserbugmessage") %]
[% ELSIF error == "report_access_denied" %]
@ -571,42 +577,42 @@
[% ELSIF error == "require_component" %]
[% title = "Component Needed" %]
You must choose a component to file this bug in. If necessary,
You must choose a component to file this [% terms.bug %] in. If necessary,
just guess.
[% ELSIF error == "require_new_password" %]
[% title = "New Password Needed" %]
You cannot change your password without submitting a new one.
[% ELSIF error == "require_summary" %]
[% title = "Summary Needed" %]
You must enter a summary for this bug.
You must enter a summary for this [% terms.bug %].
[% ELSIF error == "resolving_remaining_time" %]
[% title = "Trying to Resolve with Hours Remaining" %]
You cannot resolve a bug with hours still remaining. Set
Remaining Hours to zero if you want to resolve the bug.
You cannot resolve [% terms.abug %] with hours still remaining. Set
Remaining Hours to zero if you want to resolve the [% terms.bug %].
[% ELSIF error == "sanity_check_access_denied" %]
[% title = "Access Denied" %]
You do not have the permissions necessary to run a sanity check.
[% ELSIF error == "sidebar_supports_mozilla_only" %]
Sorry - sidebar.cgi currently only supports Mozilla based web browsers.
<a href="http://www.mozilla.org">Upgrade today</a>. :-)
[% ELSIF error == "too_many_votes_for_bug" %]
[% title = "Illegal Vote" %]
You may only use at most [% max %] votes for a single bug in the
<tt>[% prod FILTER html %]</tt> product, but you are trying to use
You may only use at most [% max %] votes for a single [% terms.bug %] in the
<tt>[% prod FILTER html %]</tt> product, but you are trying to use
[% votes %].
[% ELSIF error == "too_many_votes_for_product" %]
[% title = "Illegal Vote" %]
You may only use at most [% max %] votes for bugs in the
<tt>[% prod FILTER html %]</tt> product, but you are trying to use
You may only use at most [% max %] votes for [% terms.bugs %] in the
<tt>[% prod FILTER html %]</tt> product, but you are trying to use
[% votes %].
[% ELSIF error == "token_inexistent" %]
[% title = "Token Does Not Exist" %]
The token you submitted does not exist, has expired, or has
@ -614,17 +620,17 @@
[% ELSIF error == "unknown_keyword" %]
[% title = "Unknown Keyword" %]
<code>[% keyword FILTER html %]</code> is not a known keyword.
<code>[% keyword FILTER html %]</code> is not a known keyword.
The legal keyword names are <a href="describekeywords.cgi">listed here</a>.
[% ELSIF error == "unknown_tab" %]
[% title = "Unknown Tab" %]
<code>[% current_tab_name FILTER html %]</code> is not a legal tab name.
[% ELSIF error == "votes_must_be_nonnegative" %]
[% title = "Votes Must Be Non-negative" %]
Only use non-negative numbers for your bug votes.
Only use non-negative numbers for your [% terms.bug %] votes.
[% ELSIF error == "wrong_token_for_cancelling_email_change" %]
[% title = "Wrong Token" %]
That token cannot be used to cancel an email address change.
@ -644,7 +650,7 @@
[% ELSIF error == "zero_length_file" %]
[% title = "File Is Empty" %]
The file you are trying to attach is empty!
[% ELSE %]
[% title = "Error string not found" %]
The user error string <code>[% error FILTER html %]</code> was not found.

Просмотреть файл

@ -0,0 +1,44 @@
[%# 1.0@bugzilla.org %]
[%# 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.
#
# The Initial Developer of the Original Code is Netscape Communications
# Corporation. Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#%]
[%# This is a list of terms that may be changed to "brand" the Bugzilla
# instance (for example, referring to "bugs" as "issues".) When used, these
# strings are used in several different types of content, and are not
# protected with Template-Toolkit FILTERs. Consequently, no special
# characters are allowed.
#
# Remember to PROCESS rather than INCLUDE this template.
#%]
[% terms = {
"bug" => "bug",
"Bug" => "Bug",
"abug" = "a bug",
"Abug" = "A bug",
"ABug" = "A Bug",
"bugs" = "bugs",
"Bugs" = "Bugs",
"zeroSearchResults" = "Zarro Boogs found",
"bit" = "bit",
"bits" = "bits",
"Bugzilla" = "Bugzilla"
}
%]

Просмотреть файл

@ -25,9 +25,13 @@
# username: string. The login name of the user, if any.
#%]
[% PROCESS global/header.html.tmpl
title = 'Bugzilla Main Page'
%]
[% PROCESS global/variables.none.tmpl %]
[% title = BLOCK %]
[% terms.Bugzilla %] Main Page
[% END %]
[% PROCESS global/header.html.tmpl %]
<script type="text/javascript" language="JavaScript">
<!--
@ -36,7 +40,7 @@ function addSidebar() {
{
var sidebarname=window.location.host;
if (!/bug/i.test(sidebarname))
sidebarname="Bugzilla "+sidebarname;
sidebarname="[% terms.Bugzilla %] "+sidebarname;
window.sidebar.addPanel (sidebarname, "[% Param('urlbase') %]sidebar.cgi", "");
}
else
@ -52,12 +56,12 @@ function addSidebar() {
<table width="100%"><tr>
<td>
<p>This is where we put in lots of nifty words explaining all about Bugzilla.</p>
<p>This is where we put in lots of nifty words explaining all about [% terms.Bugzilla %].</p>
But it all boils down to a choice of:
<p>
<a href="query.cgi">Query existing bug reports</a><br>
<a href="enter_bug.cgi">Enter a new bug report</a><br>
<a href="query.cgi">Query existing [% terms.bug %] reports</a><br>
<a href="enter_bug.cgi">Enter a new [% terms.bug %] report</a><br>
<a href="report.cgi">Summary reports and charts</a><br>
</p><p>
[% IF username %]
@ -66,16 +70,16 @@ function addSidebar() {
[% ELSE %]
<a href="query.cgi?GoAheadAndLogIn=1">Log in to an existing account</a><br>
[% IF Param('createemailregexp') %]
<a href="createaccount.cgi">Open a new Bugzilla account</a><br>
<a href="createaccount.cgi">Open a new [% terms.Bugzilla %] account</a><br>
[% END %]
[% END %]
</p><p>
<a href="javascript:addSidebar()">Add to Sidebar</a> (Requires Mozilla or Netscape 6)<br>
</p>
<form name="f" action="show_bug.cgi" method="get"
onsubmit="QuickSearch(f.id.value); return false;">
onsubmit="QuickSearch(f.id.value); return false;">
<p>
Enter a bug # or some search terms:<br>
Enter a [% terms.bug %] # or some search terms:<br>
<input type="text" name="id">
<input type="submit" value="Show">
<a href="quicksearch.html">[Help]</a>

Просмотреть файл

@ -3,7 +3,7 @@
# 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
@ -19,12 +19,14 @@
# Contributor(s): Dave Lawrence <dkl@redhat.com>
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Change Columns"
%]
<p>
Select the columns you wish to appear in your buglists. Note that
Select the columns you wish to appear in your [% terms.bug %] lists. Note that
this feature requires cookies to work.
</p>
@ -38,27 +40,27 @@
<form action="colchange.cgi">
<input type="hidden" name="rememberedquery" value="[% buffer FILTER html %]">
[% FOREACH column = masterlist %]
<input type="checkbox" id="[% column %]" name="column_[% column %]"
<input type="checkbox" id="[% column %]" name="column_[% column %]"
[% "checked='checked'" IF lsearch(collist, column) != -1 %]>
<label for="[% column %]">[% field_descs.${column} || column %]</label>
<br>
[% END %]
<p>
<input id="nosplitheader" type="radio" name="splitheader" value="0"
<input id="nosplitheader" type="radio" name="splitheader" value="0"
[% "checked='checked'" IF NOT splitheader %]>
<label for="nosplitheader">
Normal headers (prettier)
</label>
<br>
<input id="splitheader" type="radio" name="splitheader" value="1"
<input id="splitheader" type="radio" name="splitheader" value="1"
[% "checked='checked'" IF splitheader %]>
<label for="splitheader">
Stagger headers (often makes list more compact)
</label>
</p>
<p>
<input type="submit" value="Change Columns">
</p>
@ -67,7 +69,7 @@
<form action="colchange.cgi">
<input type="hidden" name="rememberedquery" value="[% buffer FILTER html %]">
<input type="hidden" name="resetit" value="1">
<input type="submit" value="Reset to Bugzilla default">
<input type="submit" value="Reset to [% terms.Bugzilla %] default">
</form>
[% PROCESS global/footer.html.tmpl %]

Просмотреть файл

@ -19,6 +19,8 @@
# Contributor(s): Myk Melez <myk@mozilla.org>
#%]
[% PROCESS global/variables.none.tmpl %]
[% dontchange = "--do_not_change--" %]
<input type="hidden" name="dontchange" value="[% dontchange FILTER html %]">
@ -38,9 +40,9 @@
<hr>
<p><font size="-1">
To change multiple bugs:
To change multiple [% terms.bugs %]:
<ol>
<li>Check the bugs you want to change above.</li>
<li>Check the [% terms.bugs %] you want to change above.</li>
<li>Make your changes in the form fields below. If the change
you are making requires an explanation, include it in
the comments box.</li>
@ -53,13 +55,13 @@
<th><label for="product">Product:</label></th>
<td>
[% PROCESS selectmenu menuname = "product"
[% PROCESS selectmenu menuname = "product"
menuitems = products %]
</td>
<th><label for="version">Version:</label></th>
<td>
[% PROCESS selectmenu menuname = "version"
[% PROCESS selectmenu menuname = "version"
menuitems = versions %]
</td>
@ -72,7 +74,7 @@
</label>
</th>
<td>
[% PROCESS selectmenu menuname = "rep_platform"
[% PROCESS selectmenu menuname = "rep_platform"
menuitems = platforms %]
</td>
@ -82,7 +84,7 @@
</label>
</th>
<td>
[% PROCESS selectmenu menuname = "priority"
[% PROCESS selectmenu menuname = "priority"
menuitems = priorities %]
</td>
@ -91,7 +93,7 @@
<th><label for="component">Component:</label></th>
<td>
[% PROCESS selectmenu menuname = "component"
[% PROCESS selectmenu menuname = "component"
menuitems = components %]
</td>
@ -101,7 +103,7 @@
</label>
</th>
<td>
[% PROCESS selectmenu menuname = "bug_severity"
[% PROCESS selectmenu menuname = "bug_severity"
menuitems = severities %]
</td>
@ -110,7 +112,7 @@
<th><label for="target_milestone">Target Milestone:</label></th>
<td colspan="3">
[% PROCESS selectmenu menuname = "target_milestone"
[% PROCESS selectmenu menuname = "target_milestone"
menuitems = targetmilestones %]
</td>
@ -139,9 +141,9 @@
<tr>
<th><label for="qa_contact">QA Contact:</label></th>
<td colspan="3">
<input id="qa_contact"
name="qa_contact"
value="[% dontchange FILTER html %]"
<input id="qa_contact"
name="qa_contact"
value="[% dontchange FILTER html %]"
size="32">
</td>
</tr>
@ -192,9 +194,9 @@
<b>Groupset:</b><br>
<table border="1">
<tr>
<th>Don&apos;t<br>change<br>this group<br>restriction</td>
<th>Remove<br>bugs<br>from this<br>group</td>
<th>Add<br>bugs<br>to this<br>group</td>
<th>Don't<br>change<br>this group<br>restriction</td>
<th>Remove<br>[% terms.bugs %]<br>from this<br>group</td>
<th>Add<br>[% terms.bugs %]<br>to this<br>group</td>
<th>Group Name:</td>
</tr>
@ -229,7 +231,7 @@
</table>
[% IF foundinactive %]
<font size="-1">(Note: Bugs may not be added to <strike>inactive
<font size="-1">(Note: [% terms.Bugs %] may not be added to <strike>inactive
groups</strike>, only removed.)</font><br>
[% END %]
@ -245,14 +247,14 @@
[% knum = knum + 1 %]
<input id="knob-confirm" type="radio" name="knob" value="confirm">
<label for="knob-confirm">
Confirm bugs (change status to <b>NEW</b>)
Confirm [% terms.bugs %] (change status to <b>NEW</b>)
</label><br>
[% END %]
[% knum = knum + 1 %]
<input id="knob-accept" type="radio" name="knob" value="accept">
<label for="knob-accept">
Accept bugs (change status to <b>ASSIGNED</b>)
Accept [% terms.bugs %] (change status to <b>ASSIGNED</b>)
</label><br>
[%# If all the bugs being changed are open, allow the user to close them. %]
@ -264,7 +266,7 @@
[% knum = knum + 1 %]
<input id="knob-resolve" type="radio" name="knob" value="resolve">
<label for="knob-resolve">
Resolve bugs, changing <a href="bug_status.html">resolution</a> to
Resolve [% terms.bugs %], changing <a href="bug_status.html">resolution</a> to
</label>
<select name="resolution" onchange="document.forms.changeform.knob[[% knum %]].checked=true">
[% FOREACH resolution = resolutions %]
@ -281,38 +283,38 @@
[% IF !bugstatuses.containsany(openstates) %]
[% knum = knum + 1 %]
<input id="knob-reopen" type="radio" name="knob" value="reopen">
<label for="knob-reopen">Reopen bugs</label><br>
<label for="knob-reopen">Reopen [% terms.bugs %]</label><br>
[% END %]
[% IF bugstatuses.size == 1 %]
[% IF bugstatuses.contains('RESOLVED') %]
[% knum = knum + 1 %]
<input id="knob-verify" type="radio" name="knob" value="verify">
<label for="knob-verify">Mark bugs as <b>VERIFIED</b></label><br>
<label for="knob-verify">Mark [% terms.bugs %] as <b>VERIFIED</b></label><br>
[% ELSIF bugstatuses.contains('VERIFIED') %]
[% knum = knum + 1 %]
<input id="knob-close" type="radio" name="knob" value="close">
<label for="knob-close">Mark bugs as <b>CLOSED</b></label><br>
<label for="knob-close">Mark [% terms.bugs %] as <b>CLOSED</b></label><br>
[% END %]
[% END %]
[% knum = knum + 1 %]
<input id="knob-reassign" type="radio" name="knob" value="reassign">
<label for="knob-reassign"><a href="bug_status.html#assigned_to">
Reassign</a> bugs to
Reassign</a> [% terms.bugs %] to
</label>
<input name="assigned_to"
<input name="assigned_to"
value="[% user.login FILTER html %]"
onchange="document.forms.changeform.knob[[% knum %]].checked = true;"
size="32"><br>
[% knum = knum + 1 %]
<input id="knob-reassignbycomponent"
type="radio"
name="knob"
<input id="knob-reassignbycomponent"
type="radio"
name="knob"
value="reassignbycomponent">
<label for="knob-reassignbycomponent">
Reassign bugs to owner of selected component
Reassign [% terms.bugs %] to owner of selected component
</label><br>
<input type="submit" value="Commit">

Просмотреть файл

@ -23,11 +23,13 @@
# title: string. The title for this page. (optional)
#%]
[% PROCESS global/variables.none.tmpl %]
[%############################################################################%]
[%# Initialization #%]
[%############################################################################%]
[% DEFAULT title = "Bug List" %]
[% DEFAULT title = "$terms.Bug List" %]
[% title = title FILTER html %]
@ -44,7 +46,7 @@
<body>
[% IF bugs.size == 0 %]
<h3>Zarro Boogs found.</h3>
<h3>[% terms.zeroSearchResults %].</h3>
[% ELSE %]
[% PROCESS list/table.html.tmpl %]
[% END %]

Просмотреть файл

@ -20,6 +20,8 @@
# Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/variables.none.tmpl %]
bug_id,
[% FOREACH column = displaycolumns %]
[% column FILTER csv %],
@ -30,5 +32,5 @@ bug_id,
[% FOREACH column = displaycolumns %]
[% bug.$column FILTER csv %],
[% END %]
[% END %]

Просмотреть файл

@ -23,7 +23,9 @@
[%# Template Initialization #%]
[%############################################################################%]
[% DEFAULT title = "Bug List" %]
[% PROCESS global/variables.none.tmpl %]
[% DEFAULT title = "$terms.Bug List" %]
[% style_urls = [ "css/buglist.css" ] %]
[% qorder = order FILTER url_quote IF order %]
@ -45,7 +47,7 @@
[% END %]
[% IF Param('enablequips') != 'off' %]
[% DEFAULT quip = "Bugzilla would like to put a random quip here, but no one has entered any." %]
[% DEFAULT quip = "$terms.Bugzilla would like to put a random quip here, but no one has entered any." %]
<a href="quips.cgi"><i>[% quip FILTER html %]</i></a>
[% END %]
@ -53,8 +55,8 @@
[% IF toolong %]
<h2>
This list is too long for Bugzilla's little mind; the
Next/Prev/First/Last buttons won't appear on individual bugs.
This list is too long for [% terms.Bugzilla %]'s little mind; the
Next/Prev/First/Last buttons won't appear on individual [% terms.bugs %].
</h2>
[% END %]
@ -66,7 +68,7 @@
[%############################################################################%]
[% IF bugs.size > 9 %]
[% bugs.size %] bugs found.
[% bugs.size %]&nbsp;[% terms.bugs %] found.
[% END %]
@ -91,18 +93,18 @@
[%############################################################################%]
[% IF bugs.size == 0 %]
Zarro Boogs found.
[% terms.zeroSearchResults %].
<p>
<a href="query.cgi">Query Page</a>
&nbsp;&nbsp;<a href="enter_bug.cgi">Enter New Bug</a>
&nbsp;&nbsp;<a href="enter_bug.cgi">Enter New [% terms.Bug %]</a>
<a href="query.cgi?[% urlquerypart FILTER html %]">Edit this query</a>
</p>
[% ELSIF bugs.size == 1 %]
One bug found.
One [% terms.bug %] found.
[% ELSE %]
[% bugs.size %] bugs found.
[% bugs.size %]&nbsp;[% terms.bugs %] found.
[% END %]
@ -116,7 +118,7 @@
[% IF dotweak %]
[% PROCESS "list/edit-multiple.html.tmpl" %]
</form>
<hr>
@ -140,13 +142,13 @@
[% IF bugs.size > 1 && caneditbugs && !dotweak %]
<a href="buglist.cgi?[% urlquerypart FILTER html %]
[%- "&order=$qorder" FILTER html IF order %]&amp;tweak=1">Change Several
Bugs at Once</a>
[%- "&order=$qorder" FILTER html IF order %]&amp;tweak=1">Change Several&nbsp;
[% terms.Bugs %] at Once</a>
&nbsp;&nbsp;
[% END %]
[% IF bugowners %]
<a href="mailto:[% bugowners %]">Send Mail to Bug Owners</a> &nbsp;&nbsp;
<a href="mailto:[% bugowners %]">Send Mail to [% terms.Bug %] Owners</a> &nbsp;&nbsp;
[% END %]
<a href="query.cgi?

Просмотреть файл

@ -20,14 +20,16 @@
#%]
[%# INTERFACE:
# added_quip: string. Defined if the CGI added a quip data before
# added_quip: string. Defined if the CGI added a quip data before
# displaying anything; if defined, its value is that quip.
# show_quips: boolean. True if we are showing the entire quip list.
# quips: list of strings. Defined iff show_quips is true. List of all quips.
#%]
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Bugzilla Quip System"
title = "$terms.Bugzilla Quip System"
h1 = "Add your own clever headline"
%]
@ -55,8 +57,8 @@
[% END %]
<p>
Bugzilla will pick a random quip for the headline on each bug list, and
you can extend the quip list. Type in something clever or funny or boring
[% terms.Bugzilla %] will pick a random quip for the headline on each [% terms.bug %] list, and
you can extend the quip list. Type in something clever or funny or boring
(but not obscene or offensive, please) and bonk on the button.
[% IF Param("enablequips") == "approved" AND !user.groups.admin %]
Note that your quip has to be approved before it is used.
@ -141,8 +143,8 @@
[% END %]
[% ELSE %]
<p>
Those who like their wisdom in large doses can
<a href="quips.cgi?action=show">view
Those who like their wisdom in large doses can
<a href="quips.cgi?action=show">view
[% IF UserInGroup('admin') %]
and edit
[% END %]

Просмотреть файл

@ -23,10 +23,12 @@
# debug: boolean. True if we want the query displayed while we wait.
# query: string. The SQL query which makes the buglist.
#%]
[% PROCESS global/variables.none.tmpl %]
<html>
<head>
<title>Bugzilla is pondering your query</title>
<title>[% terms.Bugzilla %] is pondering your query</title>
</head>
<body>
<h1 style="margin-top: 20%; text-align: center;">Please stand by ...</h1>

Просмотреть файл

@ -20,17 +20,18 @@
# Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/variables.none.tmpl %]
[% INCLUDE global/header.html.tmpl title = "Linkify Text" %]
<p>
If you enter some text, this form will return it marked up like a
standard Bugzilla comment. That is, valid bug numbers, URLs, email addresses
and so on will be replaced with appropriate HTML links.
If you enter some text, this form will return it marked up like a
standard [% terms.Bugzilla %] comment. That is, valid [% terms.bug %] numbers,
URLs, email addresses and so on will be replaced with appropriate HTML links.
</p>
<form action="page.cgi" method="post">
<textarea cols="80" rows="20" name="text" wrap="hard"></textarea>
<br>
<br>
<input type="hidden" name="id" value="linked.html">
<input value="Linkify" type="submit">
</form>

Просмотреть файл

@ -22,13 +22,15 @@
[%# INTERFACE:
# You need to fulfill the interface to duplicates-table.html.tmpl.
#%]
[% PROCESS global/variables.none.tmpl %]
<html>
[% IF product %]
[% title = "Most Frequently Reported Bugs for $product" %]
[% ELSE %]
[% title = "Most Frequently Reported Bugs" %]
[% title = "Most Frequently Reported $terms.Bugs for $product" %]
[% ELSE %]
[% title = "Most Frequently Reported $terms.Bugs" %]
[% END%]
<head>

Просмотреть файл

@ -31,36 +31,38 @@
# short_desc: string. The bug's summary.
# bug_status: string. The bug's status.
# resolution: string. The bug's resolution, if any.
#
#
# bug_ids: list of integers. May be empty. The IDs of the bugs in $bugs.
#
#
# sortby: string. the column on which we are sorting the buglist.
# reverse: boolean. True if we are reversing the current sort.
# maxrows: integer. Max number of rows to display.
# changedsince: integer. The number of days ago for the changedsince column.
# openonly: boolean. True if we are only showing open bugs.
# openonly: boolean. True if we are only showing open bugs.
# product: string. Restrict to this product only.
#%]
[% PROCESS global/variables.none.tmpl %]
[%# *** Column Headers *** %]
[% IF bug_ids.size > 0 %]
<table border>
<tr bgcolor="#CCCCCC">
[% FOREACH column = [ { name => "id", description => "Bug #" },
[% FOREACH column = [ { name => "id", description => "$terms.Bug #" },
{ name => "count", description => "Dupe<br>Count" },
{ name => "delta",
{ name => "delta",
description => "Change in last<br>$changedsince day(s)" },
{ name => "component", description => "Component" },
{ name => "bug_severity", description => "Severity" },
{ name => "op_sys", description => "Op Sys" },
{ name => "target_milestone",
{ name => "op_sys", description => "Op Sys" },
{ name => "target_milestone",
description => "Target<br>Milestone" },
{ name => "short_desc", description => "Summary" } ]
{ name => "short_desc", description => "Summary" } ]
%]
[%# Small hack to keep delta column out if we don't need it %]
[% NEXT IF column.name == "delta" AND NOT dobefore %]
[% NEXT IF column.name == "delta" AND NOT dobefore %]
<td>
<center>
@ -112,7 +114,7 @@
[% FOREACH bug = bugs %]
[% LAST IF loop.index() >= maxrows %]
[% vis_bug_ids.push(bug.id) %]
[% vis_bug_ids.push(bug.id) %]
<tr [% "class='resolved'" IF bug.resolution != "" %]>
<td>
@ -143,5 +145,5 @@
</table>
[% ELSE %]
<h3>No duplicate bugs found.</h3>
<h3>No duplicate [% terms.bugs %] found.</h3>
[% END %]

Просмотреть файл

@ -21,25 +21,27 @@
[%# INTERFACE:
# products: list of strings. The products this user can see.
#
#
# sortby: string. the column on which we are sorting the buglist.
# reverse: boolean. True if we are reversing the current sort.
# maxrows: integer. Max number of rows to display.
# changedsince: integer. The number of days ago for the changedsince column.
# openonly: boolean. True if we are only showing open bugs.
# openonly: boolean. True if we are only showing open bugs.
# product: string. Restrict to this product only.
#
# Additionally, you need to fulfill the interface to
# duplicates-table.html.tmpl.
#%]
[% PROCESS global/variables.none.tmpl %]
[% IF product %]
[% title = "Most Frequently Reported Bugs for $product" %]
[% ELSE %]
[% title = "Most Frequently Reported Bugs" %]
[% title = "Most Frequently Reported $terms.Bugs for $product" %]
[% ELSE %]
[% title = "Most Frequently Reported $terms.Bugs" %]
[% END%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/header.html.tmpl
style = ".resolved { background-color: #d9d9d9; color: #000000; }"
%]
@ -66,14 +68,14 @@
<td>When sorting or restricting,
work with:</td>
<td>
<input type="radio" name="sortvisible" id="entirelist" value="0"
[% "checked" IF NOT sortvisible %]>
<input type="radio" name="sortvisible" id="entirelist" value="0"
[% "checked" IF NOT sortvisible %]>
<label for="entirelist">
entire list
</label>
<br>
<input type="radio" name="sortvisible" id="visiblelist" value="1"
[% "checked" IF sortvisible %]>
<br>
<input type="radio" name="sortvisible" id="visiblelist" value="1"
[% "checked" IF sortvisible %]>
<label for="visiblelist">
currently visible list
</label>
@ -106,65 +108,65 @@
<tr>
<td>
<label for="openonly">
Open bugs only:
Open [% terms.bugs %] only:
</label>
</td>
<td>
<input type="checkbox" name="openonly" id="openonly" value="1"
[% "checked" IF openonly %]>
<input type="checkbox" name="openonly" id="openonly" value="1"
[% "checked" IF openonly %]>
</td>
</tr>
</table>
<input type="submit" value="Change">
<input type="submit" value="Change">
</form>
<form method="post" action="buglist.cgi">
<input type="hidden" name="bug_id" value="[% bug_ids_string %]">
<input type="hidden" name="order" value="Reuse same sort as last time">
Or just give this to me as a <input type="submit" value="bug list">.
Or just give this to me as a <input type="submit" value="[% terms.bug %] list">.
(Note: the order may not be the same.)
</form>
<hr>
<b>
<a name="explanation">What are "Most Frequently Reported Bugs"?</a>
<a name="explanation">What are "Most Frequently Reported [% terms.Bugs %]"?</a>
</b>
<blockquote>
The Most Frequent Bugs page lists the known open bugs which
are reported most frequently. It is
automatically generated from the Bugzilla database every 24 hours, by
counting the number of direct and indirect duplicates of bugs.
The Most Frequent [% terms.Bugs %] page lists the known open [% terms.bugs %] which
are reported most frequently. It is
automatically generated from the [% terms.Bugzilla %] database every 24 hours, by
counting the number of direct and indirect duplicates of [% terms.bugs %].
This information is provided in order to assist in minimizing
the amount of duplicate bugs entered into Bugzilla, which saves time
for Quality Assurance engineers who have to triage the bugs.
the amount of duplicate [% terms.bugs %] entered into [% terms.Bugzilla %], which
saves time for Quality Assurance engineers who have to triage the [% terms.bugs %].
</blockquote>
<b>How do I use this list?</b>
<ul>
<li>Review the most frequent bugs list.</li>
<li>Review the most frequent [% terms.bugs %] list.</li>
<li>If your problem is listed:</li>
<ul>
<li>Click on the bug number to confirm that you have found the same bug,
and comment if you have additional information or move on with your
testing of the product.
<li>Click on the [% terms.bug %] number to confirm that you have found the
same [% terms.bug %], and comment if you have additional information
or move on with your testing of the product.
</li>
</ul>
<li>If your problem not listed:</li>
<ul>
<li><a href="query.cgi">Try and locate a similar bug</a>
<li><a href="query.cgi">Try and locate a similar [% terms.bug %]</a>
that has already been filed.</li>
<li>If you find your bug in Bugzilla, feel free to comment with any new or
additional data you may have.</li>
<li>If you cannot find your problem already documented in Bugzilla,
<a href="enter_bug.cgi">file a new bug</a>.</li>
<li>If you find your [% terms.bug %] in [% terms.Bugzilla %],
feel free to comment with any new or additional data you may have.</li>
<li>If you cannot find your problem already documented in [% terms.Bugzilla %],
<a href="enter_bug.cgi">file a new [% terms.bug %]</a>.</li>
</ul>
</ul>

Просмотреть файл

@ -26,9 +26,11 @@
# bugcount: number of bugs with that keyword
# caneditkeywords: boolean. True if this user can edit keywords
%]
[% PROCESS global/header.html.tmpl
title = "Bugzilla Keyword Descriptions"
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "$terms.Bugzilla Keyword Descriptions"
%]
[% FOREACH keyword = keywords %]
@ -36,15 +38,15 @@
[% IF loop.index != 0 %]
</table>
[% END %]
<table border="1" cellpadding="4" cellspacing="0">
<tr bgcolor="#6666FF">
<th align="left">Name</th>
<th align="left">Description</th>
<th align="left">Bugs</th>
<th align="left">[% terms.Bugs %]</th>
</tr>
[% END %]
[% END %]
<tr>
<th>
<a name="[% keyword.name FILTER html %]">

Просмотреть файл

@ -24,12 +24,14 @@
# types in Bugzilla.
#%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Reporting and Charting Kitchen"
%]
<p>
Bugzilla allows you to view and track the state of the bug database in
[% terms.Bugzilla %] allows you to view and track the state of the [% terms.bug %] database in
all manner of exciting ways.
</p>
@ -37,14 +39,14 @@
<ul>
<li>
<strong><a href="query.cgi">Search</a></strong> -
list sets of bugs.
<strong><a href="query.cgi">Search</a></strong> -
list sets of [% terms.bugs %].
</li>
<li>
<strong>
<a href="query.cgi?format=report-table">Tabular reports</a>
</strong> -
tables of bug counts in 1, 2 or 3 dimensions, as HTML or CSV.
tables of [% terms.bug %] counts in 1, 2 or 3 dimensions, as HTML or CSV.
</li>
<li>
<strong>
@ -59,7 +61,7 @@
<ul>
<li>
<strong><a href="reports.cgi">Old Charts</a></strong> -
plot the status and/or resolution of bugs against
plot the status and/or resolution of [% terms.bugs %] against
time, for each product in your database.
</li>
<li>

Просмотреть файл

@ -19,7 +19,9 @@
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[% y_label = "Bugs" %]
[% PROCESS global/variables.none.tmpl %]
[% y_label = "$terms.Bugs" %]
[% PROCESS "global/field-descs.none.tmpl" %]
@ -30,26 +32,26 @@
graph.set(x_label => col_field_disp,
y_label => y_label,
y_tick_number => 8,
y_number_format => "%d",
y_tick_number => 8,
y_number_format => "%d",
x_label_position => 0.5,
x_labels_vertical => x_labels_vertical,
bar_spacing => 8,
shadow_depth => 4,
shadow_depth => 4,
shadowclr => 'dred',
show_values => 1,
show_values => 1,
legend_placement => "RT");
graph.set(cumulate => "true",
show_values => 0) IF cumulate;
# Workaround for the fact that set_legend won't take row_names directly,
# Workaround for the fact that set_legend won't take row_names directly,
# because row_names is an array reference rather than an array.
graph.set_legend(row_names.0, row_names.1, row_names.2, row_names.3,
row_names.4, row_names.5, row_names.6, row_names.7,
row_names.8, row_names.9, row_names.10, row_names.11,
row_names.12, row_names.13, row_names.14, row_names.15);
graph.plot(data.0).png | stdout(1);
END;
-%]

Просмотреть файл

@ -19,7 +19,9 @@
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[% y_label = "Bugs" %]
[% PROCESS global/variables.none.tmpl %]
[% y_label = "$terms.Bugs" %]
[% PROCESS "global/field-descs.none.tmpl" %]
@ -35,19 +37,19 @@
[% FILTER null;
graph.set(x_label => col_field_disp,
y_label => y_label,
y_tick_number => 8,
y_tick_number => 8,
x_label_position => 0.5,
x_labels_vertical => x_labels_vertical,
legend_placement => "RT",
line_width => 2);
# Workaround for the fact that set_legend won't take row_names directly,
# Workaround for the fact that set_legend won't take row_names directly,
# because row_names is an array reference rather than an array.
graph.set_legend(row_names.0, row_names.1, row_names.2, row_names.3,
row_names.4, row_names.5, row_names.6, row_names.7,
row_names.8, row_names.9, row_names.10, row_names.11,
row_names.12, row_names.13, row_names.14, row_names.15);
graph.plot(data.0).png | stdout(1);
END;
-%]

Просмотреть файл

@ -21,7 +21,9 @@
[%# INTERFACE:
# See report-table.html.tmpl.
#%]
[% num_bugs = "Number of bugs" %]
[% PROCESS global/variables.none.tmpl %]
[% num_bugs = BLOCK %]Number of [% terms.bugs %][% END %]
[% tbl_field_disp = field_descs.$tbl_field || tbl_field %]
[% col_field_disp = field_descs.$col_field || col_field %]
[% row_field_disp = field_descs.$row_field || row_field %]

Просмотреть файл

@ -19,6 +19,9 @@
# Contributor(s): Myk Melez <myk@mozilla.org>
# Jeff Hedlund <jeff.hedlund@matrixsi.com>
#%]
[% PROCESS global/variables.none.tmpl %]
[% bugidsummary = flag.target.bug.id _ ': ' _ flag.target.bug.summary %]
[% attidsummary = flag.target.attachment.id _ ': ' _
flag.target.attachment.summary %]
@ -36,8 +39,8 @@
From: bugzilla-request-daemon
To: [% to_email %]
CC: [% flag.type.cc_list %]
Subject: [% flag.type.name %] [%+ subject_status %]: [Bug [% flag.target.bug.id %]] [% flag.target.bug.summary %]
[%- IF flag.target.attachment.exists %] :
Subject: [% flag.type.name %] [%+ subject_status %]: [[% terms.Bug %]&nbsp;[% flag.target.bug.id %]] [% flag.target.bug.summary %]
[%- IF flag.target.attachment.exists %] :
[Attachment [% flag.target.attachment.id %]] [% flag.target.attachment.summary %][% END %]
[%+ USE wrap -%]
@ -45,7 +48,7 @@ Subject: [% flag.type.name %] [%+ subject_status %]: [Bug [% flag.target.bug.id
[% user.identity %] has [% statuses.${flag.status} %] [%+ to_identity %] for [% flag.type.name %]:
Bug [% bugidsummary %]
[% terms.Bug %]&nbsp;[% bugidsummary %]
[% END %]
[%+ Param('urlbase') %]show_bug.cgi?id=[% flag.target.bug.id %]
[% IF flag.target.attachment.exists %]

Просмотреть файл

@ -19,6 +19,8 @@
# Contributor(s): Myk Melez <myk@mozilla.org>
#%]
[% PROCESS global/variables.none.tmpl %]
[%# The javascript and header_html blocks get used in header.html.tmpl. %]
[% javascript = BLOCK %]
var usetms = 0; // do we have target milestone?
@ -26,7 +28,7 @@
var last_sel = []; // caches last selection
var cpts = new Array();
[% FOREACH p = products %]
cpts['[% p FILTER js %]'] = [
cpts['[% p FILTER js %]'] = [
[%- FOREACH item = components_by_product.$p %]'[% item FILTER js %]'[% ", " UNLESS loop.last %] [%- END -%] ];
[% END %]
[% END %]
@ -48,30 +50,30 @@
<select name="product" onchange="selectProduct(this.form, 'product', 'component', 'Any');">
<option value="">Any</option>
[% FOREACH item = products %]
<option value="[% item FILTER html %]"
<option value="[% item FILTER html %]"
[% "selected" IF form.product == item %]>[% item FILTER html %]</option>
[% END %]
</select>
</td>
<th>Flag:</th>
<td>
[% PROCESS "global/select-menu.html.tmpl"
name="type"
[% PROCESS "global/select-menu.html.tmpl"
name="type"
options=types
default=form.type %]
</td>
[%# We could let people see a "queue" of non-pending requests. %]
<!--
<th>Status:</th>
<td>
[%# PROCESS "global/select-menu.html.tmpl"
name="status"
[%# PROCESS "global/select-menu.html.tmpl"
name="status"
options=["all", "?", "+-", "+", "-"]
default=form.status %]
</td>
-->
</tr>
<tr>
<th>Requestee:</th>
@ -81,18 +83,18 @@
<select name="component">
<option value="">Any</option>
[% FOREACH item = components %]
<option value="[% item FILTER html %]" [% "selected" IF form.component == item %]>
<option value="[% item FILTER html %]" [% "selected" IF form.component == item %]>
[% item FILTER html %]</option>
[% END %]
</select>
</td>
<th>Group By:</th>
<td>
[% groups = {
"Requester" => 'requester' ,
"Requestee" => 'requestee',
"Flag" => 'type' ,
"Product/Component" => 'category'
[% groups = {
"Requester" => 'requester' ,
"Requestee" => 'requestee',
"Flag" => 'type' ,
"Product/Component" => 'category'
} %]
[% PROCESS "global/select-menu.html.tmpl" name="group" options=groups default=form.group %]
</td>
@ -103,14 +105,14 @@
</form>
[% END %]
[% column_headers = {
"type" => "Flag" ,
"status" => "Status" ,
"bug" => "Bug" ,
"attachment" => "Attachment" ,
[% column_headers = {
"type" => "Flag" ,
"status" => "Status" ,
"bug" => "$terms.Bug" ,
"attachment" => "Attachment" ,
"requester" => "Requester" ,
"requestee" => "Requestee" ,
"created" => "Created" ,
"requestee" => "Requestee" ,
"created" => "Created" ,
"category" => "Product/Component" } %]
[% DEFAULT display_columns = ["requester", "requestee", "type", "bug", "attachment", "created"]
@ -119,7 +121,7 @@
%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/header.html.tmpl
title="Request Queue"
h2=filter_form
style = "

Просмотреть файл

@ -20,7 +20,9 @@
# Christian Reis <kiko@async.com.br> [javascript rewrite]
# Gervase Markham <gerv@gerv.net>
#%]
[% PROCESS global/variables.none.tmpl %]
[%# Note: use Template comments and not JS ones here, to avoid bloating
what we actually send to the browser %]
@ -35,17 +37,17 @@ var vers = new Array();
var tms = new Array();
[% END %]
[%# Create three arrays of components, versions and target milestones, indexed
[%# Create three arrays of components, versions and target milestones, indexed
# numerically according to the product they refer to. #%]
[% n = 0 %]
[% FOREACH p = product %]
cpts[[% n %]] = [
cpts[[% n %]] = [
[%- FOREACH item = p.components %]'[% item FILTER js %]'[% ", " UNLESS loop.last %] [%- END -%] ];
vers[[% n %]] = [
vers[[% n %]] = [
[%- FOREACH item = p.versions -%]'[% item FILTER js %]'[% ", " UNLESS loop.last %] [%- END -%] ];
[% IF Param('usetargetmilestone') %]
tms[[% n %]] = [
tms[[% n %]] = [
[%- FOREACH item = p.milestones %]'[% item FILTER js %]'[% ", " UNLESS loop.last %] [%- END -%] ];
[% END %]
[% n = n+1 %]
@ -57,7 +59,7 @@ var tms = new Array();
# correspond to the elements selected in source.
# - array should be a array of arrays, indexed by number. the
# array should contain the elements that correspond to that
# product.
# product.
# - sel is a list of selected items, either whole or a diff
# depending on merging.
# - target should be the target select object.
@ -78,7 +80,7 @@ var tms = new Array();
%]
function updateSelect(array, sel, target, merging) {
var i, item;
[%# If we have no versions/components/milestones %]
@ -119,7 +121,7 @@ function updateSelect(array, sel, target, merging) {
return true;
}
[%# Returns elements in a that are not in b.
[%# Returns elements in a that are not in b.
# NOT A REAL DIFF: does not check the reverse.
# - a,b: arrays of values to be compare. %]
function fake_diff_array(a, b) {
@ -203,7 +205,7 @@ function merge_arrays(a, b, b_is_select) {
[%# Returns an array of indexes or values from a select form control.
# - control: select control from which to find selections
# - findall: boolean, store all options when true or just the selected
# - findall: boolean, store all options when true or just the selected
# indexes
# - want_values: boolean; we store values when true and indexes when
# false %]
@ -263,7 +265,7 @@ function selectProduct(f) {
first_load = false;
return;
}
[%# turn first_load off. this is tricky, since it seems to be
redundant with the above clause. It's not: if when we first load
the page there is _one_ element selected, it won't fall into that
@ -273,7 +275,7 @@ function selectProduct(f) {
without merge/sorting. %]
first_load = false;
[%# - sel keeps the array of products we are selected.
[%# - sel keeps the array of products we are selected.
- merging says if it is a full list or just a list of products that
were added to the current selection. %]
var merging = false;
@ -285,10 +287,10 @@ function selectProduct(f) {
if (!findall) {
[%# save sel for the next invocation of selectProduct() %]
var tmp = sel;
[%# this is an optimization: if we have just added products to an
existing selection, no need to clear the form controls and add
everybody again; just merge the new ones with the existing
existing selection, no need to clear the form controls and add
everybody again; just merge the new ones with the existing
options. %]
if ((last_sel.length > 0) && (last_sel.length < sel.length)) {
sel = fake_diff_array(sel, last_sel);
@ -317,7 +319,7 @@ function selectProduct(f) {
// -->
</script>
[% query_variants = [
[% query_variants = [
{ value => "allwordssubstr", description => "contains all of the words/strings" },
{ value => "anywordssubstr", description => "contains any of the words/strings" },
{ value => "substring", description => "contains the string" },
@ -342,7 +344,7 @@ function selectProduct(f) {
[% FOREACH qv = query_variants %]
<option value="[% qv.value %]"
[% " selected" IF default.short_desc_type.0 == qv.value %]>[% qv.description %]</option>
[% END %]
[% END %]
</select>
</td>
<td>
@ -352,7 +354,7 @@ function selectProduct(f) {
<td>
<input type="submit" value="[% button_name %]">
</td>
</tr>
</tr>
[%# *** Product Component Version Target *** %]
@ -394,7 +396,7 @@ function selectProduct(f) {
reserved word - we use 'component_' instead. %]
<td align="left">
<label for="component" accesskey="m">
<select name="component" id="component"
<select name="component" id="component"
multiple="multiple" size="5">
[% FOREACH c = component_ %]
<option value="[% c FILTER html %]"
@ -413,8 +415,8 @@ function selectProduct(f) {
<th align="left"><u>V</u>ersion:</th>
</tr>
<tr valign="top">
[% PROCESS select sel = { name => 'version',
size => 5,
[% PROCESS select sel = { name => 'version',
size => 5,
accesskey => 'v' } %]
</tr>
</table>
@ -426,7 +428,7 @@ function selectProduct(f) {
<th align="left"><u>T</u>arget:</th>
</tr>
<tr valign="top">
[% PROCESS select sel = { name => 'target_milestone',
[% PROCESS select sel = { name => 'target_milestone',
size => 5,
accesskey => 't' } %]
</tr>
@ -437,15 +439,15 @@ function selectProduct(f) {
</table>
</td>
</tr>
[%# *** Comment URL Whiteboard Keywords *** %]
[% FOREACH field = [
{ name => "long_desc", description => "A&nbsp;<u>C</u>omment",
[% FOREACH field = [
{ name => "long_desc", description => "A&nbsp;<u>C</u>omment",
accesskey => 'c' },
{ name => "bug_file_loc", description => "The&nbsp;<u>U</u>RL",
{ name => "bug_file_loc", description => "The&nbsp;<u>U</u>RL",
accesskey => 'u' },
{ name => "status_whiteboard", description => "<u>W</u>hiteboard",
{ name => "status_whiteboard", description => "<u>W</u>hiteboard",
accesskey => 'w' } ] %]
[% UNLESS field.name == 'status_whiteboard' AND NOT Param('usestatuswhiteboard') %]
@ -454,10 +456,10 @@ function selectProduct(f) {
<td>
<select name="[% field.name %]_type">
[% FOREACH qv = query_variants %]
[% type = "${field.name}_type" %]
[% type = "${field.name}_type" %]
<option value="[% qv.value %]"
[% " selected" IF default.$type.0 == qv.value %]>[% qv.description %]</option>
[% END %]
[% END %]
</select>
</td>
<td><input name="[% field.name %]" size="40"
@ -465,7 +467,7 @@ function selectProduct(f) {
value="[% default.${field.name}.0 FILTER html %]">
</td>
<td></td>
</tr>
</tr>
[% END %]
[% END %]
@ -476,7 +478,7 @@ function selectProduct(f) {
</th>
<td>
<select name="keywords_type">
[% FOREACH qv = [
[% FOREACH qv = [
{ name => "allwords", description => "contains all of the keywords" },
{ name => "anywords", description => "contains any of the keywords" },
{ name => "nowords", description => "contains none of the keywords" } ] %]
@ -493,7 +495,7 @@ function selectProduct(f) {
</td>
</tr>
[% END %]
</table>
</table>
<hr>
@ -507,7 +509,7 @@ function selectProduct(f) {
<th align="left"><a href="queryhelp.cgi#status">St<u>a</u>tus</a>:</th>
</tr>
<tr valign="top">
[% PROCESS select sel = { name => 'bug_status',
[% PROCESS select sel = { name => 'bug_status',
size => 7,
accesskey => 'a' } %]
</tr>
@ -521,7 +523,7 @@ function selectProduct(f) {
</th>
</tr>
<tr valign="top">
[% PROCESS select sel = { name => 'resolution',
[% PROCESS select sel = { name => 'resolution',
size => 7,
accesskey => 'r' } %]
</tr>
@ -533,9 +535,9 @@ function selectProduct(f) {
<th align="left"><a href="queryhelp.cgi#severity">S<u>e</u>verity</a>:</th>
</tr>
<tr valign="top">
[% PROCESS select sel = { name => 'bug_severity',
[% PROCESS select sel = { name => 'bug_severity',
size => 7,
accesskey => 'e' } %]
accesskey => 'e' } %]
</tr>
</table>
</td>
@ -545,9 +547,9 @@ function selectProduct(f) {
<th align="left"><a href="queryhelp.cgi#priority">Pr<u>i</u>ority</a>:</th>
</tr>
<tr valign="top">
[% PROCESS select sel = { name => 'priority',
size => 7,
accesskey => 'i' } %]
[% PROCESS select sel = { name => 'priority',
size => 7,
accesskey => 'i' } %]
</tr>
</table>
</td>
@ -557,7 +559,7 @@ function selectProduct(f) {
<th align="left"><a href="queryhelp.cgi#platform"><u>H</u>ardware</a>:</th>
</tr>
<tr valign="top">
[% PROCESS select sel = { name => 'rep_platform',
[% PROCESS select sel = { name => 'rep_platform',
size => 7,
accesskey => 'h' } %]
</tr>
@ -569,8 +571,8 @@ function selectProduct(f) {
<th align="left"><a href="queryhelp.cgi#opsys"><u>O</u>S</a>:</th>
</tr>
<tr valign="top">
[% PROCESS select sel = { name => 'op_sys',
size => 7,
[% PROCESS select sel = { name => 'op_sys',
size => 7,
accesskey => 'o' } %]
</tr>
</table>
@ -589,7 +591,7 @@ function selectProduct(f) {
<legend>
<strong>
<a href="queryhelp.cgi#peopleinvolved">Email</a> and Numbering
</strong>
</strong>
</legend>
@ -607,17 +609,17 @@ function selectProduct(f) {
</tr>
<tr>
<td>
<input type="checkbox" name="emailassigned_to[% n %]"
<input type="checkbox" name="emailassigned_to[% n %]"
id="emailassigned_to[% n %]" value="1"
[% " checked" IF default.emailassigned_to.$n %]>
<label for="emailassigned_to[% n %]">
bug owner
[% terms.bug %] owner
</label>
</td>
</tr>
<tr>
<td>
<input type="checkbox" name="emailreporter[% n %]"
<input type="checkbox" name="emailreporter[% n %]"
id="emailreporter[% n %]" value="1"
[% " checked" IF default.emailreporter.$n %]>
<label for="emailreporter[% n %]">
@ -628,7 +630,7 @@ function selectProduct(f) {
[% IF Param('useqacontact') %]
<tr>
<td>
<input type="checkbox" name="emailqa_contact[% n %]"
<input type="checkbox" name="emailqa_contact[% n %]"
id="emailqa_contact[% n %]" value="1"
[% " checked" IF default.emailqa_contact.$n %]>
<label for="emailqa_contact[% n %]">
@ -639,7 +641,7 @@ function selectProduct(f) {
[% END %]
<tr>
<td>
<input type="checkbox" name="emailcc[% n %]"
<input type="checkbox" name="emailcc[% n %]"
id="emailcc[% n %]" value="1"
[% " checked" IF default.emailcc.$n %]>
<label for="emailcc[% n %]">
@ -649,7 +651,7 @@ function selectProduct(f) {
</tr>
<tr>
<td>
<input type="checkbox" name="emaillongdesc[% n %]"
<input type="checkbox" name="emaillongdesc[% n %]"
id="emaillongdesc[% n %]" value="1"
[% " checked" IF default.emaillongdesc.$n %]>
<label for="emaillongdesc[% n %]">
@ -660,12 +662,12 @@ function selectProduct(f) {
<tr>
<td>
<select name="emailtype[% n %]">
[% FOREACH qv = [
[% FOREACH qv = [
{ name => "substring", description => "contains" },
{ name => "exact", description => "is" },
{ name => "regexp", description => "matches regexp" },
{ name => "notregexp", description => "doesn't match regexp" } ] %]
<option value="[% qv.name %]"
[% " selected" IF default.emailtype.$n == qv.name %]>[% qv.description %]</option>
[% END %]
@ -679,20 +681,20 @@ function selectProduct(f) {
</tr>
</table>
</td>
[% END %]
</tr>
</table>
<hr>
<table>
<table>
<tr>
<td>
<select name="bugidtype">
<option value="include"[% " selected" IF default.bugidtype.0 == "include" %]>Only include</option>
<option value="exclude"[% " selected" IF default.bugidtype.0 == "exclude" %]>Exclude</option>
</select>
bugs numbered:
[% terms.bugs %] numbered:
</td>
<td>
<input type="text" name="bug_id" value="[% default.bug_id.0 FILTER html %]" size="20">
@ -705,7 +707,7 @@ function selectProduct(f) {
[% IF Param('usevotes') %]
<tr>
<td align="right">
Only bugs with at least:
Only [% terms.bugs %] with at least:
</td>
<td>
<input name="votes" size="3" value="[% default.votes.0 FILTER html %]"> votes
@ -722,11 +724,11 @@ function selectProduct(f) {
<td valign="top">
<fieldset>
<legend><strong>Bug Changes</strong></legend>
<legend><strong>[% terms.Bug %] Changes</strong></legend>
<dl>
<dt>Only bugs changed between:</dt>
<dt>Only [% terms.bugs %] changed between:</dt>
<dd>
<input name="chfieldfrom" size="10" value="[% default.chfieldfrom.0 FILTER html %]">
and <input name="chfieldto" size="10" value="[% default.chfieldto.0 FILTER html %]">

Просмотреть файл

@ -21,10 +21,12 @@
# Jouni Heikniemi <jouni@heikniemi.net>
#%]
[% PROCESS global/variables.none.tmpl %]
[%# This is not necessary for English templates, but useful for localisers. %]
[% ordersdesc = {
"Reuse same sort as last time" => "Reuse same sort as last time",
"Bug Number" => "Bug Number",
"Bug Number" => "$terms.Bug Number",
"Importance" => "Importance",
"Assignee" => "Assignee",
"Last Changed" => "Last Changed" } %]
@ -81,7 +83,7 @@
[% IF namedqueries.size > 0 %]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
[% END %]
<input type="checkbox" id="remember" name="remember" value="1"
<input type="checkbox" id="remember" name="remember" value="1"
onclick="remCheckboxChanged()">
[% IF namedqueries.size > 0 %]
<label for="remember">and remember it</label>
@ -108,7 +110,7 @@
</label><br>
</td>
</tr>
<tr>
<td colspan="2">
[% IF namedqueries.size > 0 %]
@ -124,12 +126,12 @@
<option value="[% query FILTER html %]">
[% query FILTER html %]</option>
[% END %]
</select>
</select>
[% END %]
</td>
</tr>
</table>
<script type="text/javascript"> <!--
remCheckboxChanged();
// -->
@ -142,12 +144,12 @@
[% FOREACH order = orders %]
<option value="[% order FILTER html %]"
[% " selected" IF default.order.0 == order %]>
[% ordersdesc.$order FILTER html %]</option>
[% ordersdesc.$order FILTER html %]</option>
[% END %]
</select>
<input type="submit" value="[% button_name %]">
[% IF userdefaultquery %]
<p>
<a href="query.cgi?nukedefaultquery=1">

Просмотреть файл

@ -25,11 +25,13 @@
# search/boolean-charts.html.tmpl.
#%]
[% PROCESS global/variables.none.tmpl %]
[% USE Bugzilla %]
[% cgi = Bugzilla.cgi %]
[% PROCESS global/header.html.tmpl
title = "Search for bugs"
[% PROCESS global/header.html.tmpl
title = "Search for $terms.bugs"
onload = "selectProduct(document.forms['queryform']);initHelp();"
%]
@ -56,13 +58,13 @@
<font color="red">
[% IF cgi.user_agent("Mozilla/5") %]
Note that if the help popups are hidden by form element scroll bars,
this is a bug in your browser, not in Bugzilla.
this is a bug in your browser, not in [% terms.Bugzilla %].
[% END %]
</font>
</font>
</p>
[% END %]
[% END %]
<form method="get" action="buglist.cgi" name="queryform">
[% PROCESS search/form.html.tmpl %]
[% PROCESS search/knob.html.tmpl %]

Просмотреть файл

@ -23,64 +23,64 @@
{ id => "short_desc_type",
html => "The type of summary search you would like" },
{ id => "short_desc",
html => "The bug summary is a short sentence which succinctly describes <br>
what the bug is about." },
html => "The $terms.bug summary is a short sentence which succinctly
describes <br> what the $terms.bug is about." },
{ id => "product",
html => "Bugs are categorised into Products and Components. Product is the<br>
top-level categorisation." },
html => "$terms.Bugs are categorised into Products and Components. Product is
the<br>top-level categorisation." },
{ id => "component",
html => "Components are second-level categories; each belongs to a<br>
particular Product. Select a Product to narrow down this list." },
{ id => "version",
html => "The version field defines the version of the software the bug<br>
was found in." },
html => "The version field defines the version of the software the
$terms.bug<br>was found in." },
{ id => "target_milestone",
html => "The target_milestone field is used to define when the engineer<br>
the bug is assigned to expects to fix it." },
the $terms.bug is assigned to expects to fix it." },
{ id => "long_desc",
html => "Bugs have comments added to them by Bugzilla users. You can<br>
search for some text in those comments." },
html => "$terms.Bugs have comments added to them by $terms.Bugzilla users.
You can<br>search for some text in those comments." },
{ id => "long_desc_type",
html => "The type of comment search you would like" },
{ id => "bug_file_loc",
html => "Bugs can have a URL associated with them - for example, a pointer<br>
to a web site where the problem is seen." },
html => "$terms.Bugs can have a URL associated with them - for example, a
pointer<br>to a web site where the problem is seen." },
{ id => "bug_file_loc_type",
html => "The type of URL search you would like" },
{ id => "status_whiteboard",
html => "Each bug has a free-form single line text entry box for adding<br>
tags and status information." },
html => "Each $terms.bug has a free-form single line text entry box for
adding<br>tags and status information." },
{ id => "status_whiteboard_type",
html => "The type of whiteboard search you would like" },
{ id => "keywords",
html => "You can add keywords from a defined list to bugs, in order to<br>
tag and group them." },
html => "You can add keywords from a defined list to $terms.bugs, in order
to<br>tag and group them." },
{ id => "keywords_type",
html => "The type of keyword search you would like" },
{ id => "bug_status",
html => "A bug may be in any of a number of states." },
html => "A $terms.bug may be in any of a number of states." },
{ id => "resolution",
html => "If a bug is in a resolved state, then one of these reasons will<br>
be given for its resolution." },
html => "If a $terms.bug is in a resolved state, then one of these reasons
will<br>be given for its resolution." },
{ id => "bug_severity",
html => "How severe the bug is, or whether it's an enhancement." },
html => "How severe the $terms.bug is, or whether it's an enhancement." },
{ id => "priority",
html => "Engineers prioritise their bugs using this field." },
html => "Engineers prioritise their $terms.bugs using this field." },
{ id => "rep_platform",
html => "The hardware platform the bug was observed on." },
html => "The hardware platform the $terms.bug was observed on." },
{ id => "op_sys",
html => "The operating system the bug was observed on." },
html => "The operating system the $terms.bug was observed on." },
{ id => "email1",
html => "Every bug has people associated with it in different roles.<br>
Here, you can search on what people are in what role." },
html => "Every $terms.bug has people associated with it in different
roles.<br>Here, you can search on what people are in what role." },
{ id => "email2",
html => "Every bug has people associated with it in different roles.<br>
Here, you can search on what people are in what role." },
html => "Every $terms.bug has people associated with it in different
roles.<br>Here, you can search on what people are in what role." },
{ id => "bug_id",
html => "You can limit your search to a specific set of bugs." },
html => "You can limit your search to a specific set of $terms.bugs ." },
{ id => "votes",
html => "Some bugs can be voted for, and you can limit your search to bugs<br>
with more than a certain number of votes." },
html => "Some $terms.bugs can be voted for, and you can limit your search to
$terms.bugs<br>with more than a certain number of votes." },
{ id => "chfield",
html => "You can search for specific types of change - this field define <br>
which field you are interested in changes for." },

Просмотреть файл

@ -24,7 +24,9 @@
# the interfaces of the templates it contains.
#%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Generate Report"
onload = "selectProduct(document.forms['reportform']);"
%]
@ -32,8 +34,8 @@
[% PROCESS "search/search-report-select.html.tmpl" %]
<p>
Produce a pictorial graph of bug counts by choosing one or more fields as
your axes, and then refining your set of bugs using the rest of the form.
Produce a pictorial graph of [% terms.bug %] counts by choosing one or more fields as
your axes, and then refining your set of [% terms.bugs %] using the rest of the form.
If you choose a third axis, it will be represented by multiple tables of data.
Note: vertical axis settings will be ignored for pie charts.
</p>
@ -55,7 +57,7 @@
<input type="radio" name="cumulate" value="1"
[% " checked" IF default.cumulate.0 == "1" %]>
Added
</td>
<td width="150" height="150">
<table border="1" width="100%" height="100%">
@ -74,31 +76,31 @@
{ name => "bar", description => "Bar Chart" },
{ name => "pie", description => "Pie Chart" } ] %]
[% default.chart_format.0 = default.chart_format.0 || "bar" %]
[% FOREACH chart_format = chart_formats %]
<input type="radio" name="format"
value="[% chart_format.name FILTER html %]"
<input type="radio" name="format"
value="[% chart_format.name FILTER html %]"
[% " checked" IF default.chart_format.0 == chart_format.name %]>
[% chart_format.description FILTER html %]<br>
[% END %]
</td>
</tr>
<tr>
<td>
</td>
<td align="left">
<b>Horizontal Axis:</b>
[% PROCESS select name = 'x_axis_field' %]<br>
<label for="x_labels_vertical"><b>Vertical labels:</b></label>
<input type="checkbox" name="x_labels_vertical" id="x_labels_vertical"
<label for="x_labels_vertical"><b>Vertical labels:</b></label>
<input type="checkbox" name="x_labels_vertical" id="x_labels_vertical"
value="1"
[% " checked" IF default.x_labels_vertical.0 == "1" %]>
</td>
<td>
</td>
</tr>
</table>
</table>
<hr>

Просмотреть файл

@ -24,7 +24,9 @@
# the interfaces of the templates it contains.
#%]
[% PROCESS global/header.html.tmpl
[% PROCESS global/variables.none.tmpl %]
[% PROCESS global/header.html.tmpl
title = "Generate Report"
onload = "selectProduct(document.forms['reportform']);"
%]
@ -32,8 +34,8 @@
[% PROCESS "search/search-report-select.html.tmpl" %]
<p>
Produce a table of bug counts by choosing one or more fields as your axes,
and then refining your set of bugs using the rest of the form.
Produce a table of [% terms.bug %] counts by choosing one or more fields as your axes,
and then refining your set of [% terms.bugs %] using the rest of the form.
If you choose a third axis, it will be represented by multiple tables of data.
</p>
@ -56,7 +58,7 @@
<input type="radio" name="ctype" value="csv">CSV
</td>
</tr>
<tr>
<td valign="middle" align="center">
<b>Vertical Axis:</b><br>
@ -73,7 +75,7 @@
</table>
</td>
</tr>
</table>
</table>
<hr>

Просмотреть файл

@ -25,11 +25,13 @@
# search/boolean-charts.html.tmpl.
#%]
[% PROCESS global/variables.none.tmpl %]
[% USE Bugzilla %]
[% cgi = Bugzilla.cgi %]
[% PROCESS global/header.html.tmpl
title = "Search for bugs"
[% PROCESS global/header.html.tmpl
title = "Search for $terms.bugs"
onload = "selectProduct(document.forms['queryform']);initHelp();"
%]
@ -56,13 +58,13 @@
<font color="red">
[% IF cgi.user_agent("Mozilla/5") %]
Note that if the help popups are hidden by form element scroll bars,
this is a bug in your browser, not in Bugzilla.
this is a bug in your browser, not in [% terms.Bugzilla %].
[% END %]
</font>
</font>
</p>
[% END %]
[% END %]
<form method="get" action="buglist.cgi" name="queryform">
[% PROCESS search/form.html.tmpl %]
[% PROCESS search/knob.html.tmpl %]

Просмотреть файл

@ -21,6 +21,9 @@
# Scott Collins <scc@mozilla.org>
# Christopher A. Aillon <christopher@aillon.com>
#%]
[% PROCESS global/variables.none.tmpl %]
<?xml version="1.0"?>
<!-- [% template_version %] -->
<?xml-stylesheet href="chrome://communicator/skin/" type="text/css"?>
@ -69,7 +72,7 @@ function normal_keypress_handler( aEvent ) {
<box orient="vertical" flex="1">
<text class="text-link" onclick="load_relative_url('query.cgi')" value="new query"/>
<text class="text-link" onclick="load_relative_url('report.cgi')" value="reports"/>
<text class="text-link" onclick="load_relative_url('enter_bug.cgi')" value="new bug"/>
<text class="text-link" onclick="load_relative_url('enter_bug.cgi')" value="new [% terms.bug %]"/>
<separator class="thin"/>
[% IF user %]
@ -96,7 +99,7 @@ function normal_keypress_handler( aEvent ) {
<separator class="thin"/>
[%- IF user.showmybugslink %]
[% filtered_username = user.login FILTER url_quote %]
<text class="text-link" onclick="load_relative_url('[% Param('mybugstemplate').replace('%userid%', filtered_username) FILTER js FILTER html %]')" value="my bugs"/>
<text class="text-link" onclick="load_relative_url('[% Param('mybugstemplate').replace('%userid%', filtered_username) FILTER js FILTER html %]')" value="my [% terms.bugs %]"/>
[%- END %]
[%- IF Param('usevotes') %]
<text class="text-link" onclick="load_relative_url('votes.cgi?action=show_user')" value="my votes"/>