reportbooru: raise exception if not configured.

This commit is contained in:
evazion
2017-04-05 01:03:20 -05:00
parent 08867fa84d
commit f57561118c
4 changed files with 20 additions and 2 deletions

View File

@@ -1,5 +1,15 @@
# queries reportbooru to find missed post searches
class MissedSearchService
def self.enabled?
Danbooru.config.reportbooru_server.present?
end
def initialize
if !MissedSearchService.enabled?
raise NotImplementedError.new("the Reportbooru service isn't configured. Missed searches are not available.")
end
end
def each_search(&block)
fetch_data.scan(/(.+?) (\d+)\.0\n/).each(&block)
end

View File

@@ -2,7 +2,15 @@
class PopularSearchService
attr_reader :date, :scale
def self.enabled?
Danbooru.config.reportbooru_server.present?
end
def initialize(date, scale)
if !PopularSearchService.enabled?
raise NotImplementedError.new("the Reportbooru service isn't configured. Popular searches are not available.")
end
@date = date
@scale = scale
end

View File

@@ -24,7 +24,7 @@ module Reports
end
def fetch_similar_user_ids(endpoint = "user_similarity")
return NotImplementedError unless Danbooru.config.reportbooru_server
raise NotImplementedError.new("the Reportbooru service isn't configured. User similarity is not available.") unless Danbooru.config.reportbooru_server
params = {
"key" => Danbooru.config.reportbooru_key,

View File

@@ -4,7 +4,7 @@
<li id="secondary-links-posts-upload" class="nonessential"><%= link_to "Upload", new_upload_path %></li>
<li id="secondary-links-posts-popular"><%= link_to "Popular", popular_explore_posts_path %></li>
<li id="secondary-links-posts-hot"><%= link_to "Hot", posts_path(:tags => "order:rank") %></li>
<% if Danbooru.config.reportbooru_server %>
<% if PopularSearchService.enabled? %>
<li id="secondary-links-posts-searches"><%= link_to "Searches", searches_explore_posts_path %></li>
<% end %>
<% unless CurrentUser.is_anonymous? %>