my ($bugid, $isprivate) = FetchSQLData();
ValidateBugID($bugid);
if (($isprivate > 0 ) && Param("insidergroup") && !(UserInGroup(Param("insidergroup")))) {
- ThrowUserError("You are not permitted access to this attachment.");
+ ThrowUserError("attachment_access_denied");
}
}
# cannot get any other information about that product.
my $product_id = get_product_id($product);
-ThrowUserError("The product name is invalid.") unless $product_id;
+if (!$product_id) {
+ $::vars->{'product'} = $product;
+ ThrowUserError("invalid_product_name");
+}
# Make sure the user is authorized to access this product.
if (Param("usebuggroups") && GroupExists($product)) {
if ($product) {
$product_id = get_product_id($product);
if (!$product_id) {
- ThrowUserError("The product <tt>" . html_quote($product) .
- "</tt> does not exist");
+ $vars->{'product'} = $product;
+ ThrowUserError("invalid_product_name");
}
}
my $product = $::FORM{'product'};
my $product_id = get_product_id($product);
if (!$product_id) {
- ThrowUserError("Sorry, the product <tt>" . html_quote($product) .
- "</tt> does not exist");
+ $vars->{'product'} = $product;
+ ThrowUserError("invalid_product_name");
}
# Set cookies
my $comp_id; # Remember, can't use this for mass changes
if ($::FORM{'component'} ne $::dontchange) {
if (!defined $prod_id) {
- ThrowUserError("You cannot change the component from a list of bugs " .
- "covering more than one product");
+ ThrowUserError("no_component_change_for_multiple_products");
}
$comp_id = get_component_id($prod_id,
$::FORM{'component'});
}
if (Param('enablequips') ne "on") {
- ThrowUserError("This site does not permit the addition of new quips");
+ ThrowUserError("no_new_quips");
exit();
}
use Support::Files;
-use Test::More tests => (scalar(@Support::Files::testitems) * 2);
+use Test::More tests => (scalar(@Support::Files::testitems) * 3);
my @testitems = @Support::Files::testitems; # get the files to test.
}
}
+# Check to see that all error messages use tags (for l10n reasons.)
+foreach my $file (@testitems) {
+ $file =~ s/\s.*$//; # nuke everything after the first space (#comment)
+ next if (!$file); # skip null entries
+ if (! open (FILE, $file)) {
+ ok(0,"could not open $file --WARNING");
+ next;
+ }
+ my $lineno = 0;
+ my $error = 0;
+
+ while (my $file_line = <FILE>) {
+ $lineno++;
+ if ($file_line =~ /Throw.*Error\("(.*?)"/) {
+ if ($1 =~ /\s/) {
+ ok(0,"$file has a Throw*Error call on line $lineno
+ which doesn't use a tag --ERROR");
+ $error = 1;
+ }
+ }
+ }
+
+ ok(1,"$file uses Throw*Error calls correctly") if !$error;
+
+ close(FILE);
+}
exit 0;
Bug aliases cannot be longer than 20 characters.
Please choose a shorter alias.
+ [% ELSIF error == "attachment_access_denied" %]
+ [% title = "Access Denied" %]
+ You are not permitted access to this attachment.
+
[% ELSIF error == "buglist_parameters_required" %]
[% title = "Parameters Required" %]
[% url = "query.cgi" %]
[% title = "Invalid Bug ID" %]
The bug id [% bug_id FILTER html %] is invalid.
+ [% ELSIF error == "invalid_product_name" %]
+ [% title = "Invalid Product Name" %]
+ The product name '[% product FILTER html %]' is invalid or does not exist.
+
[% ELSIF error == "invalid_username" %]
[% title = "Invalid Username" %]
The name <tt>[% name FILTER html %]</tt> is not a valid username.
[% title = "No Bugs Chosen" %]
You apparently didn't choose any 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
+ one product.
+
[% ELSIF error == "no_dupe_stats" %]
[% title = "Cannot Find Duplicate Statistics" %]
There are no duplicate statistics for today ([% today %]) or yesterday.
There are no duplicate statistics for today ([% today %]), and an error
occurred opening yesterday's dupes file: [% error_msg FILTER html %].
+ [% ELSIF error == "no_new_quips" %]
+ [% title = "No New Quips" %]
+ This site does not permit the addition of new quips.
+
[% ELSIF error == "page_not_found" %]
[% title = "Page not found" %]
The page you requested cannot be found.
[% title = "Unknown 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.
[% ELSE %]
[%# Cope with legacy calling convention, where "error" was the string
DoPermissions();
last SWITCH;
};
- ThrowUserError("Unknown tab <code>" . html_quote($current_tab_name)
- . "</code>");
+ ThrowUserError("current_tab_name");
}
# Generate and return the UI (HTML page) from the appropriate template.