fix for blank tag counts
This commit is contained in:
@@ -595,10 +595,15 @@ class Post < ActiveRecord::Base
|
|||||||
|
|
||||||
def fast_count(tags = "")
|
def fast_count(tags = "")
|
||||||
tags = tags.to_s.strip
|
tags = tags.to_s.strip
|
||||||
count = get_count_from_cache(tags)
|
|
||||||
|
if tags.blank? && Danbooru.config.blank_tag_search_fast_count
|
||||||
|
count = Danbooru.config.blank_tag_search_fast_count
|
||||||
|
else
|
||||||
|
count = get_count_from_cache(tags)
|
||||||
|
|
||||||
if count.nil?
|
if count.nil?
|
||||||
fast_count_search(tags)
|
fast_count_search(tags)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
count.to_i
|
count.to_i
|
||||||
@@ -607,12 +612,8 @@ class Post < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def fast_count_search(tags)
|
def fast_count_search(tags)
|
||||||
if tags.blank? && Danbooru.config.blank_tag_search_fast_count
|
count = Post.with_timeout(500, Danbooru.config.blank_tag_search_fast_count || 1_000_000) do
|
||||||
count = Danbooru.config.blank_tag_search_fast_count
|
Post.tag_match(tags).undeleted.count
|
||||||
else
|
|
||||||
count = Post.with_timeout(500, Danbooru.config.blank_tag_search_fast_count || 1_000_000) do
|
|
||||||
Post.tag_match(tags).undeleted.count
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
if count == 0
|
if count == 0
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ module Danbooru
|
|||||||
|
|
||||||
# taken from kaminari (https://github.com/amatsuda/kaminari)
|
# taken from kaminari (https://github.com/amatsuda/kaminari)
|
||||||
def total_count
|
def total_count
|
||||||
|
raise if @paginator_options[:count] == 0
|
||||||
return @paginator_options[:count] if @paginator_options[:count]
|
return @paginator_options[:count] if @paginator_options[:count]
|
||||||
|
|
||||||
c = except(:offset, :limit, :order)
|
c = except(:offset, :limit, :order)
|
||||||
|
|||||||
Reference in New Issue
Block a user