|| $cgi->param('serverpush');
my $order = $cgi->param('order') || "";
-my $order_from_cookie = 0; # True if $order set using the LASTORDER cookie
# The params object to use for the actual query itself
my $params;
# Cookies from early versions of Specific Search included this text,
# which is now invalid.
$order =~ s/ LIMIT 200//;
-
- $order_from_cookie = 1;
}
else {
$order = ''; # Remove possible "reuse" identifier as unnecessary
last ORDER;
};
do {
- my @order;
+ my (@order, @invalid_fragments);
my @columnnames = map($columns->{lc($_)}->{'name'}, keys(%$columns));
# A custom list of columns. Make sure each column is valid.
foreach my $fragment (split(/,/, $order)) {
push(@order, $fragment);
}
else {
- my $vars = { fragment => $fragment };
- if ($order_from_cookie) {
- $cgi->remove_cookie('LASTORDER');
- ThrowCodeError("invalid_column_name_cookie", $vars);
- }
- else {
- ThrowCodeError("invalid_column_name_form", $vars);
- }
+ push(@invalid_fragments, $fragment);
}
}
+ if (scalar @invalid_fragments) {
+ $vars->{'message'} = 'invalid_column_name';
+ $vars->{'invalid_fragments'} = \@invalid_fragments;
+ }
+
$order = join(",", @order);
# Now that we have checked that all columns in the order are valid,
# detaint the order string.
The attachment number of one of the attachments you wanted to obsolete,
[% attach_id FILTER html %], is invalid.
- [% ELSIF error == "invalid_column_name_cookie" %]
- [% title = "Invalid Column Name" %]
- The custom sort order specified in your cookie contains an invalid
- column name <em>[% fragment FILTER html %]</em>.
- The cookie has been cleared.
-
- [% ELSIF error == "invalid_column_name_form" %]
- [% title = "Invalid Column Name" %]
- The custom sort order specified in your form submission contains an
- invalid column name <em>[% fragment FILTER html %]</em>.
-
[% ELSIF error == "invalid_customfield_type" %]
[% title = "Invalid Field Type" %]
The type <em>[% type FILTER html %]</em> is not a valid field type.
group.
[% END %]
+ [% ELSIF message_tag == "invalid_column_name" %]
+ The custom sort order specified contains one or more invalid
+ column names: <em>[% invalid_fragments.join(', ') FILTER html %]</em>.
+ They have been removed from the sort list.
+
[% ELSIF message_tag == "job_queue_depth" %]
[% count FILTER html %] jobs in the queue.