post queries: show full error message on error page.
This commit is contained in:
@@ -132,6 +132,8 @@ class ApplicationController < ActionController::Base
|
||||
render_error_page(410, exception, template: "static/pagination_error", message: "You cannot go beyond page #{CurrentUser.user.page_limit}.")
|
||||
when PostQuery::TagLimitError
|
||||
render_error_page(422, exception, template: "static/tag_limit_error", message: "You cannot search for more than #{CurrentUser.tag_query_limit} tags at a time.")
|
||||
when PostQuery::Error
|
||||
render_error_page(422, exception, message: exception.message)
|
||||
when RateLimiter::RateLimitError
|
||||
render_error_page(429, exception, message: "Rate limit exceeded. You're doing that too fast")
|
||||
when Rack::Timeout::RequestTimeoutException
|
||||
|
||||
@@ -275,13 +275,14 @@ class PostQuery
|
||||
def validate_metatags!
|
||||
return if metatags.empty?
|
||||
|
||||
raise Error, "Can't have multiple order metatags" if select_metatags(*ORDER_METATAGS).size > 1
|
||||
order_metatags = select_metatags(*ORDER_METATAGS)
|
||||
raise Error, "#{order_metatags.to_sentence} can't be used together." if order_metatags.size > 1
|
||||
|
||||
SINGLETON_METATAGS.each do |name|
|
||||
metatag = select_metatags(name).first
|
||||
raise Error, "'#{name}:' can't be used more than once" if select_metatags(name).size > 1
|
||||
raise Error, "#{metatag} can't be negated" if metatag&.parents&.any?(&:not?)
|
||||
raise Error, "#{metatag} can't be used in an 'or' clause" if metatag&.parents&.any?(&:or?)
|
||||
raise Error, "'#{name}:' can't be used more than once." if select_metatags(name).size > 1
|
||||
raise Error, "'#{metatag}' can't be negated." if metatag&.parents&.any?(&:not?)
|
||||
raise Error, "'#{metatag}' can't be used with the 'or' operator." if metatag&.parents&.any?(&:or?)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<h1>Error</h1>
|
||||
|
||||
<% if @message.present? %>
|
||||
<p><%= @message %></p>
|
||||
<p>Error: <%= @message %></p>
|
||||
<% else %>
|
||||
<p>Unexpected error: <%= @exception.class %>.</p>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user