Bug 58633

git-svn-id: svn://svn.office.custis.ru/3rdparty/bugzilla.org/trunk@606 6955db30-a419-402b-8a0d-67ecbb4d7f56
master
vfilippov 2009-12-25 13:59:14 +00:00
parent 4a02af6c8b
commit 2e548f68f2
4 changed files with 236 additions and 140 deletions

View File

@ -48,9 +48,14 @@ use Safe;
use Encode::MIME::Header ();
# We want any compile errors to get to the browser, if possible.
BEGIN {
BEGIN
{
$SIG{__DIE__} = sub
{
if (Bugzilla::Error::_in_eval())
{
die @_;
}
if (ref($_[0]) eq 'Bugzilla::Error')
{
die($_[0]->{message});
@ -70,7 +75,6 @@ BEGIN {
};
}
# This creates the request cache for non-mod_perl installations.
our $_request_cache = {};

View File

@ -0,0 +1,72 @@
[%# 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.
#
# CustIS "nice error" template.
#
# Contributor(s): Vitaliy Filippov <vitalif@mail.ru>
#%]
[%# We only want HTML error messages for ERROR_MODE_WEBPAGE %]
[% USE Bugzilla %]
[% IF Bugzilla.error_mode != constants.ERROR_MODE_WEBPAGE %]
[% IF Bugzilla.usage_mode == constants.USAGE_MODE_BROWSER %]
[% error_message FILTER none %]
[% ELSE %]
[% error_message FILTER txt %]
[% END %]
[% RETURN %]
[% END %]
[% UNLESS header_done %]
[% PROCESS global/header.html.tmpl %]
[% END %]
[% PROCESS global/docslinks.html.tmpl
docslinks = docslinks
admindocslinks = admindocslinks
%]
<div style="margin: 20px; padding: 10px; font-size: 130%; float: left; font-family: sans-serif; border: 10px solid red">
<div style="font-size: 150%; background-color: #ffd0d0; padding: 10px">
<p style="margin-top: 0; margin-bottom: 0">[% error_message.replace("\n\n", "</p><p style='margin-bottom: 0'>") FILTER none %]</p>
</div>
<p style="margin-bottom: 0">
Please press <b><a href="javascript:history.back()">Back</a></b> and try again.
</p>
[%# If a saved search fails, people want the ability to edit or delete it.
# This is the best way of getting information about that possible saved
# search from any error call location. %]
[% namedcmd = Bugzilla.cgi.param("namedcmd") %]
[% sharer_id = Bugzilla.cgi.param("sharer_id") %]
[% IF namedcmd AND error != "missing_query"
AND error != "saved_search_used_by_whines"
AND !sharer_id %]
<p style="margin-bottom: 0">
Alternatively, you can
<a href="buglist.cgi?cmdtype=dorem&amp;remaction=forget&amp;namedcmd=
[% namedcmd FILTER url_quote %]">forget</a>
[% FOREACH q = Bugzilla.user.queries %]
[% IF q.name == namedcmd %]
or <a href="query.cgi?[% q.url FILTER html %]">edit</a>
[% END %]
[% END %]
the saved search '[% namedcmd FILTER html %]'.
</p>
[% END %]
</div>
[% PROCESS global/footer.html.tmpl %]

View File

@ -0,0 +1,75 @@
[%# 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): Gervase Markham <gerv@gerv.net>
# Frédéric Buclin <LpSolit@gmail.com>
# Vitaliy Filippov <vitalif@mail.ru>
#%]
[%# We only want HTML error messages for ERROR_MODE_WEBPAGE %]
[% USE Bugzilla %]
[% IF Bugzilla.error_mode != constants.ERROR_MODE_WEBPAGE %]
[% IF Bugzilla.usage_mode == constants.USAGE_MODE_BROWSER %]
[% error_message FILTER none %]
[% ELSE %]
[% error_message FILTER txt %]
[% END %]
[% RETURN %]
[% END %]
[% UNLESS header_done %]
[% PROCESS global/header.html.tmpl %]
[% END %]
[% PROCESS global/docslinks.html.tmpl
docslinks = docslinks
admindocslinks = admindocslinks
%]
<div style="padding: 20px; background-color: #ff8080; font-size: 130%">
<p style="margin-top: 0; margin-bottom: 0">[% error_message.replace("\n\n", "</p><p style='margin-bottom: 0'>") FILTER none %]</p>
</div>
<p>
Please press <b><a href="javascript:history.back()">Back</a></b> and try again.
</p>
[%# If a saved search fails, people want the ability to edit or delete it.
# This is the best way of getting information about that possible saved
# search from any error call location. %]
[% namedcmd = Bugzilla.cgi.param("namedcmd") %]
[% sharer_id = Bugzilla.cgi.param("sharer_id") %]
[% IF namedcmd AND error != "missing_query"
AND error != "saved_search_used_by_whines"
AND !sharer_id %]
<p>
Alternatively, you can
<a href="buglist.cgi?cmdtype=dorem&amp;remaction=forget&amp;namedcmd=
[% namedcmd FILTER url_quote %]">forget</a>
[% FOREACH q = Bugzilla.user.queries %]
[% IF q.name == namedcmd %]
or <a href="query.cgi?[% q.url FILTER html %]">edit</a>
[% END %]
[% END %]
the saved search '[% namedcmd FILTER html %]'.
</p>
[% END %]
[% PROCESS global/footer.html.tmpl %]

View File

@ -17,6 +17,7 @@
#
# Contributor(s): Gervase Markham <gerv@gerv.net>
# Frédéric Buclin <LpSolit@gmail.com>
# Vitaliy Filippov <vitalif@mail.ru>
#%]
[%# INTERFACE:
@ -31,10 +32,10 @@
# Note that you must explicitly filter every single template variable
# in this file; if you do not wish to change it, use the "none" filter.
#
# Extension- or custom-specific error handling can be easily added
# via hooks: just place your <extension>-errors.html.tmpl into
# Extension- or custom-specific error handling can be easily added
# via hooks: just place your <extension>-errors.html.tmpl into
# template/en/extension/hook/global/user-error.html.tmpl/errors/
# Note: be aware of uniqueness of error string parameter value, since
# Note: be aware of uniqueness of error string parameter value, since
# nobody can guarantee the hook files processing order in the future
#%]
@ -227,7 +228,7 @@
[% ELSIF error == "bug_url_too_long" %]
[% title = "Invalid $terms.Bug URL" %]
[% terms.Bug %] URLs can not be longer than
[% terms.Bug %] URLs can not be longer than
[%+ constants.MAX_BUG_URL_LENGTH FILTER none %] characters long.
<code>[% url FILTER html %]</code> is too long.
@ -399,7 +400,7 @@
[% ELSIF error == "empty_group_name" %]
[% title = "The group name can not be empty" %]
You must enter a name for the group.
[% ELSIF error == "entry_access_denied" %]
[% title = "Permission Denied" %]
[% admindocslinks = {'groups.html' => 'Group Security'} %]
@ -409,13 +410,13 @@
[% ELSIF error == "field_already_exists" %]
[% title = "Field Already Exists" %]
The field '[% field.name FILTER html %]'
The field '[% field.name FILTER html %]'
([% field.description FILTER html %]) already exists. Please
choose another name.
[% ELSIF error == "field_cant_control_self" %]
[% title = "Field Can't Control Itself" %]
The [% field.description FILTER html %] field can't be set to control
The [% field.description FILTER html %] field can't be set to control
itself.
[% ELSIF error == "field_control_must_be_select" %]
@ -449,7 +450,7 @@
[% ELSIF error == "fieldname_invalid" %]
[% title = "Specified Field Does Not Exist" %]
The field '[% field.name FILTER html %]' does not exist or
The field '[% field.name FILTER html %]' does not exist or
cannot be edited with this interface.
[% ELSIF error == "fieldvalue_already_exists" %]
@ -489,8 +490,8 @@
[% ELSIF error == "fieldvalue_name_too_long" %]
[% title = "Field Value Is Too Long" %]
The value of a field is limited to
[%+ constants.FIELD_VALUE_MAX_SIZE FILTER none %] characters.
The value of a field is limited to
[%+ constants.FIELD_VALUE_MAX_SIZE FILTER none %] characters.
'[% value FILTER html %]' is too long ([% value.length %] characters).
[% ELSIF error == "fieldvalue_not_editable" %]
@ -502,7 +503,7 @@
[% ELSIF error == "fieldvalue_not_deletable" %]
[% title = "Field Value Not Deletable" %]
The value '[% value.name FILTER html %]' cannot be removed because
it plays some special role for the '[% field.description FILTER html %]'
it plays some special role for the '[% field.description FILTER html %]'
field.
[% ELSIF error == "fieldvalue_reserved_word" %]
@ -513,13 +514,13 @@
[% ELSIF error == "fieldvalue_sortkey_invalid" %]
[% title = "Invalid Field Value Sortkey" %]
The sortkey '[% sortkey FILTER html %]' for the
[%+ field.description FILTER html %] field is not a valid
The sortkey '[% sortkey FILTER html %]' for the
[%+ field.description FILTER html %] field is not a valid
(positive) number.
[% ELSIF error == "fieldvalue_still_has_bugs" %]
[% title = "You Cannot Delete This Field Value" %]
You cannot delete the value '[% value.name FILTER html %]' from the
You cannot delete the value '[% value.name FILTER html %]' from the
[% field.description FILTER html %] field, because there are still
[%+ value.bug_count FILTER html %] [%+ terms.bugs %] using it.
@ -533,7 +534,7 @@
[% ELSIF error == "file_too_large" %]
[% title = "File Too Large" %]
The file you are trying to attach is [% filesize FILTER html %]
The file you are trying to attach is [% filesize FILTER html %]
kilobytes (KB) in size. Non-patch attachments cannot be more than
[%+ Param('maxattachmentsize') %] KB. <br>
We recommend that you store your attachment elsewhere
@ -567,11 +568,11 @@
'flags.html' => 'Using Flags'} %]
You asked [% requestee.identity FILTER html %]
for <code>[% flag_type.name FILTER html %]</code> on [% terms.bug %]
for <code>[% flag_type.name FILTER html %]</code> on [% terms.bug %]
[%+ bug_id FILTER html -%]
[% IF attach_id && attach_id > 0 %], attachment [% attach_id FILTER html %][% END %],
but that [% terms.bug %] has been restricted to users in certain groups,
and the user you asked isn't in all the groups to which
but that [% terms.bug %] has been restricted to users in certain groups,
and the user you asked 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.
@ -584,7 +585,7 @@
'flags.html' => 'Using Flags'} %]
You asked [% requestee.identity FILTER html %]
for <code>[% flag_type.name FILTER html %]</code> on
for <code>[% flag_type.name FILTER html %]</code> on
[%+ terms.bug %] [%+ bug_id FILTER html %],
attachment [% attach_id FILTER html %], but that attachment
is restricted to users in the [% Param("insidergroup") FILTER html %] group,
@ -628,7 +629,7 @@
[% title = "Format Not Found" %]
The requested format <em>[% format FILTER html %]</em> does not exist with
a content type of <em>[% ctype FILTER html %]</em>.
[% ELSIF error == "flag_type_sortkey_invalid" %]
[% title = "Flag Type Sort Key Invalid" %]
The sort key must be an integer between 0 and 32767 inclusive.
@ -676,10 +677,10 @@
[% ELSIF error == "group_invalid_removal" %]
You tried to remove [% terms.bug %] [%+ bug.id FILTER html %]
from group id [% group_id FILTER html %], but [% terms.bugs %] in the
from group id [% group_id FILTER html %], but [% terms.bugs %] in the
'[% product FILTER html %]' product can not be removed from that
group.
[% ELSIF error == "group_invalid_restriction" %]
You tried to restrict [% terms.bug %] [%+ bug.id FILTER html %] to
to group id [% group_id FILTER html %], but [% terms.bugs %] in the
@ -751,26 +752,26 @@
[% ELSIF error == "illegal_change_deps" %]
[% title = "Not allowed" %]
You tried to change the
<strong>[% field_descs.$field FILTER html %]</strong> field
but only a user allowed to edit
You tried to change the
<strong>[% field_descs.$field FILTER html %]</strong> field
but only a user allowed to edit
both related [% terms.bugs %] may change that field.
[% ELSIF error == "illegal_changed_in_last_x_days" %]
[% title = "Your Search Makes No Sense" %]
The <em>Changed in last ___ days</em> field must be a simple number.
The <em>Changed in last ___ days</em> field must be a simple number.
You entered <tt>[% value FILTER html %]</tt>, which isn't.
[% ELSIF error == "illegal_date" %]
[% title = "Illegal Date" %]
'<tt>[% date FILTER html %]</tt>' is not a legal date.
[% IF format %]
Please use the format '<tt>[% format FILTER html %]</tt>'.
[% END %]
[% ELSIF error == "illegal_email_address" %]
[% title = "Invalid Email Address" %]
The e-mail address you entered (<b>[% addr FILTER html %]</b>)
The e-mail address you entered (<b>[% addr FILTER html %]</b>)
didn't pass our syntax checking for a legal email address.
[% IF default %]
A legal address must contain exactly one '@',
@ -780,12 +781,12 @@
[% END %]
It must also not contain any of these special characters:
<tt>\ ( ) &amp; &lt; &gt; , ; : &quot; [ ]</tt>, or any whitespace.
[% ELSIF error == "illegal_frequency" %]
[% title = "Too Frequent" %]
Unless you are an administrator, you may not create series which are
Unless you are an administrator, you may not create series which are
run more often than once every [% minimum FILTER html %] days.
[% ELSIF error == "illegal_group_control_combination" %]
[% title = "Your Group Control Combination Is Illegal" %]
[% admindocslinks = {'groups.html' => 'Assigning Group Controls to Products'} %]
@ -799,14 +800,14 @@
[% ELSIF error == "illegal_query_name" %]
[% title = "Illegal Search Name" %]
The name of your search cannot contain any of the following characters:
The name of your search cannot contain any of the following characters:
&lt;, &gt;, &amp;.
[% ELSIF error == "illegal_series_creation" %]
[% admindocslinks = {'groups.html' => 'Group security'} %]
[% docslinks = {'reporting.html' => 'Reporting'} %]
You are not authorized to create series.
[% ELSIF error == "illegal_series_edit" %]
[% admindocslinks = {'groups.html' => 'Group security'} %]
[% docslinks = {'reporting.html' => 'Reporting'} %]
@ -819,16 +820,16 @@
[% IF format %]
Please use the format '<tt>[% format FILTER html %]</tt>'.
[% END %]
[% ELSIF error == "illegal_regexp" %]
[% title = "Illegal Regular Expression" %]
The regular expression you provided [% value FILTER html %] is not valid.
The error was: [% dberror FILTER html %].
[% ELSIF error == "insufficient_data_points" %]
[% docslinks = {'reporting.html' => 'Reporting'} %]
We don't have enough data points to make a graph (yet).
[% ELSIF error == "invalid_attach_id" %]
[% title = "Invalid Attachment ID" %]
The attachment id [% attach_id FILTER html %] is invalid.
@ -836,7 +837,7 @@
[% ELSIF error == "bug_id_does_not_exist" %]
[% title = BLOCK %]Invalid [% terms.Bug %] ID[% END %]
[% terms.Bug %] #[% bug_id FILTER html %] does not exist.
[% ELSIF error == "improper_bug_id_field_value" %]
[% title = BLOCK %]
[% IF bug_id %]Invalid [% ELSE %]Missing [% END %] [% terms.Bug %] ID
@ -929,7 +930,7 @@
[% ELSIF error == "invalid_username" %]
[% title = "Invalid Username" %]
The name <tt>[% name FILTER html %]</tt> is not a valid 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 [% terms.Bugzilla %] account.
@ -944,18 +945,18 @@
[% ELSIF error == "keyword_blank_description" %]
[% title = "Blank Keyword Description Not Allowed" %]
You must enter a non-blank description for the keyword.
[% ELSIF error == "keyword_blank_name" %]
[% title = "Blank Keyword Name Not Allowed" %]
You must enter a non-blank name for the keyword.
[% ELSIF error == "keyword_invalid_name" %]
[% title = "Invalid Keyword Name" %]
You may not use commas or whitespace in a keyword name.
[% ELSIF error == "local_file_too_large" %]
[% title = "Local File Too Large" %]
Local file uploads must not exceed
Local file uploads must not exceed
[% Param('maxlocalattachment') %] MB in size.
[% ELSIF error == "login_needed_for_password_change" %]
@ -995,7 +996,7 @@
[% title = "Milestone Required" %]
You must select a target milestone for [% terms.bug %]
[%+ bug.id FILTER html %]
if you are going to accept it. Part of accepting
if you are going to accept it. Part of accepting
[%+ terms.abug %] is giving an estimate of when it will be fixed.
[% ELSIF error == "milestone_sortkey_invalid" %]
@ -1006,13 +1007,13 @@
[% ELSIF error == "misarranged_dates" %]
[% title = "Misarranged Dates" %]
Your start date ([% datefrom FILTER html %]) is after
Your start date ([% datefrom FILTER html %]) is after
your end date ([% dateto FILTER html %]).
[% ELSIF error == "missing_attachment_description" %]
[% title = "Missing Attachment Description" %]
You must enter a description for the attachment.
[% ELSIF error == "missing_category" %]
[% title = "Missing Category" %]
You did not specify a category for this series.
@ -1035,36 +1036,36 @@
[% ELSIF error == "missing_content_type" %]
[% title = "Missing Content-Type" %]
You asked [% terms.Bugzilla %] to auto-detect the content type, but
your browser did not specify a content type when uploading the file,
your browser did not specify a content type when uploading the file,
so you must enter a content type manually.
[% ELSIF error == "missing_content_type_method" %]
[% title = "Missing Content-Type Determination Method" %]
You must choose a method for determining the content type,
either <em>auto-detect</em>, <em>select from list</em>, or <em>enter
either <em>auto-detect</em>, <em>select from list</em>, or <em>enter
manually</em>.
[% ELSIF error == "missing_cookie" %]
[% title = "Missing Cookie" %]
Sorry, I seem to have lost the cookie that recorded
the results of your last search. I'm afraid you will have to start
again from the <a href="query.cgi">search page</a>.
[% ELSIF error == "missing_datasets" %]
[% title = "No Datasets Selected" %]
[% docslinks = {'reporting.html' => 'Reporting'} %]
You must specify one or more datasets to plot.
[% ELSIF error == "missing_frequency" %]
[% title = "Missing Frequency" %]
[% docslinks = {'reporting.html' => 'Reporting'} %]
You did not specify a valid frequency for this series.
[% ELSIF error == "missing_name" %]
[% title = "Missing Name" %]
[% docslinks = {'reporting.html' => 'Reporting'} %]
You did not specify a name for this series.
[% ELSIF error == "missing_query" %]
[% title = "Missing Search" %]
[% docslinks = {'query.html' => "Searching for $terms.bugs",
@ -1089,7 +1090,7 @@
[% ELSIF error == "missing_subcategory" %]
[% title = "Missing Subcategory" %]
You did not specify a subcategory for this series.
[% ELSIF error == "missing_version" %]
[% title = "Missing Version" %]
[% admindocslinks = {'versions.html' => 'Defining versions'} %]
@ -1149,7 +1150,7 @@
[% ELSIF error == "no_dupe_stats" %]
[% title = "Cannot Find Duplicate Statistics" %]
[% admindocslinks = {'extraconfig.html' => 'Setting up the collecstats.pl job'} %]
There are no duplicate statistics for today ([% today FILTER html %])
There are no duplicate statistics for today ([% today FILTER html %])
or yesterday.
[% ELSIF error == "no_dupe_stats_error_today" %]
@ -1167,7 +1168,7 @@
[% ELSIF error == "no_dupe_stats_error_yesterday" %]
[% title = "Error Reading Yesterday's Dupes File" %]
[% admindocslinks = {'extraconfig.html' => 'Setting up the collecstats.pl job'} %]
There are no duplicate statistics for today ([% today FILTER html %]),
There are no duplicate statistics for today ([% today FILTER html %]),
and an error
occurred opening yesterday's dupes file: [% error_msg FILTER html %].
@ -1199,32 +1200,32 @@
[% ELSIF error == "number_not_numeric" %]
[% title = "Numeric Value Required" %]
The value '[% num FILTER html %]' in the
<em>[% field_descs.$field FILTER html %]</em> field
The value '[% num FILTER html %]' in the
<em>[% field_descs.$field FILTER html %]</em> field
is not a numeric value.
[% ELSIF error == "number_too_large" %]
[% title = "Number Too Large" %]
The value '[% num FILTER html %]' in the
<em>[% field_descs.$field FILTER html %]</em> field
The value '[% num FILTER html %]' in the
<em>[% field_descs.$field FILTER html %]</em> field
is more than the maximum allowable value of '[% max_num FILTER html %]'.
[% ELSIF error == "number_too_small" %]
[% title = "Number Too Small" %]
The value '[% num FILTER html %]'
in the <em>[% field_descs.$field FILTER html %]</em> field
The value '[% num FILTER html %]'
in the <em>[% field_descs.$field FILTER html %]</em> field
is less than the minimum allowable value of '[% min_num FILTER html %]'.
[% ELSIF error == "object_not_specified" %]
[% type = BLOCK %][% INCLUDE object_name class = class %][% END %]
[% title = BLOCK %][% type FILTER ucfirst FILTER html %] Not
[% title = BLOCK %][% type FILTER ucfirst FILTER html %] Not
Specified[% END %]
You must select/enter a [% type FILTER html %].
[% ELSIF error == "object_does_not_exist" %]
[% type = BLOCK %][% INCLUDE object_name class = class %][% END %]
[% title = BLOCK %]Invalid [% type FILTER ucfirst FILTER html %][% END %]
There is no [% type FILTER html %]
There is no [% type FILTER html %]
[% IF id.defined %]
with the id '[% id FILTER html %]'
[% ELSE %]
@ -1266,7 +1267,7 @@
[% ELSIF error == "patch_too_large" %]
[% title = "File Too Large" %]
The file you are trying to attach is [% filesize FILTER html %]
The file you are trying to attach is [% filesize FILTER html %]
kilobytes (KB) in size.
Patches cannot be more than [% Param('maxattachmentsize') %] KB in size.
Try splitting your patch into several pieces.
@ -1302,11 +1303,11 @@
[% title = "Product name already in use" %]
[% admindocslinks = {'products.html' => 'Administering products'} %]
The product name '[% product FILTER html %]' already exists.
[% ELSIF error == "product_name_diff_in_case" %]
[% title = "Product name differs only in case" %]
[% admindocslinks = {'products.html' => 'Administering products'} %]
The product name '[% product FILTER html %]' differs from existing
The product name '[% product FILTER html %]' differs from existing
product '[% existing_product FILTER html %]' only in case.
[% ELSIF error == "product_name_too_long" %]
@ -1330,7 +1331,7 @@
[% title = "Blank Product Name Not Allowed" %]
[% admindocslinks = {'products.html' => 'Administering products'} %]
You must enter a name for the product.
[% ELSIF error == "product_disabled" %]
[% title = BLOCK %]Product closed for [% terms.Bug %] Entry[% END %]
[% admindocslinks = {'products.html' => 'Administering products'} %]
@ -1341,7 +1342,7 @@
[% title = "Product Edit Access Denied" %]
[% admindocslinks = {'products.html' => 'Administering products',
'groups.html' => 'Group security'} %]
You are not permitted to edit [% terms.bugs %] in product
You are not permitted to edit [% terms.bugs %] in product
[%+ product FILTER html %].
[% ELSIF error == "product_has_bugs" %]
@ -1423,7 +1424,7 @@
You must enter a summary for this [% terms.bug %].
[% ELSIF error == "resolution_cant_clear" %]
[% terms.Bug %] [%+ bug_id FILTER bug_link(bug_id) FILTER none %] is
[% terms.Bug %] [%+ bug_id FILTER bug_link(bug_id) FILTER none %] is
closed, so you cannot clear its resolution.
[% ELSIF error == "resolution_not_allowed" %]
@ -1433,13 +1434,13 @@
[% ELSIF error == "saved_search_used_by_whines" %]
[% title = "Saved Search In Use" %]
[% docslinks = {'whining.html' => 'About Whining'} %]
The saved search <em>[% search_name FILTER html %]</em> is being used
The saved search <em>[% search_name FILTER html %]</em> is being used
by <a href="editwhines.cgi">Whining events</a> with the following subjects:
[%+ subjects FILTER html %]
[% ELSIF error == "search_content_without_matches" %]
[% title = "Illegal Search" %]
The "content" field can only be used with "matches" search
The "content" field can only be used with "matches" search
and the "matches" search can only be used with the "content"
field.
@ -1447,10 +1448,10 @@
[% title = "Series Already Exists" %]
[% docslinks = {'reporting.html' => 'Reporting'} %]
A series named <em>[% series.category FILTER html %] /
[%+ series.subcategory FILTER html %] /
[%+ series.subcategory FILTER html %] /
[%+ series.name FILTER html %]</em>
already exists.
[% 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>. :-)
@ -1485,16 +1486,16 @@
[% ELSIF error == "sudo_in_progress" %]
[% title = "Session In Progress" %]
A sudo session (impersonating [% target FILTER html %]) is in progress.
A sudo session (impersonating [% target FILTER html %]) is in progress.
End that session (using the link in the footer) before starting a new one.
[% ELSIF error == "sudo_password_required" %]
[% title = "Password Required" %]
Your [% terms.Bugzilla %] password is required to begin a sudo
Your [% terms.Bugzilla %] password is required to begin a sudo
session. Please <a href="relogin.cgi?action=prepare-sudo&target_login=
[%- target_login FILTER html %]&reason=
[%- reason FILTER html %]">go back</a> and enter your password.
[% ELSIF error == "sudo_preparation_required" %]
[% title = "Preparation Required" %]
You may not start a sudo session directly. Please
@ -1598,7 +1599,7 @@
[% ELSIF error == "user_match_failed" %]
[% title = "Match Failed" %]
<tt>[% name FILTER html %]</tt> does not exist or you are not allowed
<tt>[% name FILTER html %]</tt> does not exist or you are not allowed
to see that user.
[% ELSIF error == "user_not_insider" %]
@ -1657,64 +1658,6 @@
[% END %]
[% END %]
[%# We only want HTML error messages for ERROR_MODE_WEBPAGE %]
[% USE Bugzilla %]
[% IF Bugzilla.error_mode != constants.ERROR_MODE_WEBPAGE %]
[% IF Bugzilla.usage_mode == constants.USAGE_MODE_BROWSER %]
[% error_message FILTER none %]
[% ELSE %]
[% error_message FILTER txt %]
[% END %]
[% RETURN %]
[% END %]
[% UNLESS header_done %]
[% PROCESS global/header.html.tmpl %]
[% END %]
[% PROCESS global/docslinks.html.tmpl
docslinks = docslinks
admindocslinks = admindocslinks
%]
<table cellpadding="20">
<tr>
<td id="error_msg" class="throw_error">
[% error_message FILTER none %]
</td>
</tr>
</table>
<p>
Please press <b>Back</b> and try again.
</p>
[%# If a saved search fails, people want the ability to edit or delete it.
# This is the best way of getting information about that possible saved
# search from any error call location. %]
[% namedcmd = Bugzilla.cgi.param("namedcmd") %]
[% sharer_id = Bugzilla.cgi.param("sharer_id") %]
[% IF namedcmd AND error != "missing_query"
AND error != "saved_search_used_by_whines"
AND !sharer_id %]
<p>
Alternatively, you can
<a href="buglist.cgi?cmdtype=dorem&amp;remaction=forget&amp;namedcmd=
[% namedcmd FILTER url_quote %]">forget</a>
[% FOREACH q = Bugzilla.user.queries %]
[% IF q.name == namedcmd %]
or <a href="query.cgi?[% q.url FILTER html %]">edit</a>
[% END %]
[% END %]
the saved search '[% namedcmd FILTER html %]'.
</p>
[% END %]
[% PROCESS global/footer.html.tmpl %]
[% BLOCK object_name %]
[% IF class == "Bugzilla::User" %]
user
@ -1733,3 +1676,5 @@
[% field_descs.$field_name FILTER html %]
[% END %]
[% END %]
[% PROCESS "global/user-error-page.html.tmpl" %]