fixes for tag_query_limit
This commit is contained in:
@@ -54,19 +54,19 @@ class PostQueryBuilder
|
|||||||
tag_query_sql = []
|
tag_query_sql = []
|
||||||
|
|
||||||
if tags[:include].any?
|
if tags[:include].any?
|
||||||
raise ::Post::SearchError.new("You cannot search for more than #{CurrentUser.tag_query_limit} tags at a time") if tags[:include].size > CurrentUser.tag_query_limit
|
raise ::Post::SearchError.new("You cannot search for more than #{CurrentUser.user.tag_query_limit} tags at a time") if tags[:include].size > CurrentUser.user.tag_query_limit
|
||||||
tag_query_sql << "(" + escape_string_for_tsquery(tags[:include]).join(" | ") + ")"
|
tag_query_sql << "(" + escape_string_for_tsquery(tags[:include]).join(" | ") + ")"
|
||||||
has_constraints!
|
has_constraints!
|
||||||
end
|
end
|
||||||
|
|
||||||
if tags[:related].any?
|
if tags[:related].any?
|
||||||
raise ::Post::SearchError.new("You cannot search for more than #{CurrentUser.tag_query_limit} tags at a time") if tags[:related].size > CurrentUser.tag_query_limit
|
raise ::Post::SearchError.new("You cannot search for more than #{CurrentUser.user.tag_query_limit} tags at a time") if tags[:related].size > CurrentUser.user.tag_query_limit
|
||||||
tag_query_sql << "(" + escape_string_for_tsquery(tags[:related]).join(" & ") + ")"
|
tag_query_sql << "(" + escape_string_for_tsquery(tags[:related]).join(" & ") + ")"
|
||||||
has_constraints!
|
has_constraints!
|
||||||
end
|
end
|
||||||
|
|
||||||
if tags[:exclude].any?
|
if tags[:exclude].any?
|
||||||
raise ::Post::SearchError.new("You cannot search for more than #{CurrentUser.tag_query_limit} tags at a time") if tags[:exclude].size > CurrentUser.tag_query_limit
|
raise ::Post::SearchError.new("You cannot search for more than #{CurrentUser.user.tag_query_limit} tags at a time") if tags[:exclude].size > CurrentUse.userr.tag_query_limit
|
||||||
raise ::Post::SearchError.new("You cannot search for only excluded tags") unless has_constraints?
|
raise ::Post::SearchError.new("You cannot search for only excluded tags") unless has_constraints?
|
||||||
|
|
||||||
tag_query_sql << "!(" + escape_string_for_tsquery(tags[:exclude]).join(" | ") + ")"
|
tag_query_sql << "!(" + escape_string_for_tsquery(tags[:exclude]).join(" | ") + ")"
|
||||||
|
|||||||
@@ -210,7 +210,7 @@ class Tag < ActiveRecord::Base
|
|||||||
output[:include] << tag[1..-1]
|
output[:include] << tag[1..-1]
|
||||||
|
|
||||||
elsif tag =~ /\*/
|
elsif tag =~ /\*/
|
||||||
matches = Tag.name_matches(tag).all(:select => "name", :limit => CurrentUser.tag_query_limit, :order => "post_count DESC").map(&:name)
|
matches = Tag.name_matches(tag).all(:select => "name", :limit => CurrentUser.user.tag_query_limit, :order => "post_count DESC").map(&:name)
|
||||||
matches = ["~no_matches~"] if matches.empty?
|
matches = ["~no_matches~"] if matches.empty?
|
||||||
output[:include] += matches
|
output[:include] += matches
|
||||||
|
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ module PostSetPresenters
|
|||||||
end
|
end
|
||||||
|
|
||||||
def pattern_tags
|
def pattern_tags
|
||||||
Tag.name_matches(post_set.tag_string).all(:select => "name", :limit => CurrentUser.tag_query_limit, :order => "post_count DESC").map(&:name)
|
Tag.name_matches(post_set.tag_string).all(:select => "name", :limit => CurrentUser.user.tag_query_limit, :order => "post_count DESC").map(&:name)
|
||||||
end
|
end
|
||||||
|
|
||||||
def related_tags_for_group
|
def related_tags_for_group
|
||||||
|
|||||||
Reference in New Issue
Block a user