ping listbooru when scanning saved searches #2523

This commit is contained in:
r888888888
2015-10-27 18:01:35 -07:00
parent fafb881080
commit 98dfae2c7f
3 changed files with 12 additions and 12 deletions

View File

@@ -1,7 +1,10 @@
class SavedSearchesController < ApplicationController
before_filter :member_only
respond_to :html, :xml, :json, :js
def index
SavedSearch.delay(:queue => "default").refresh_listbooru(CurrentUser.id)
@saved_searches = saved_searches.order("tag_query")
@categories = @saved_searches.group_by{|saved_search| saved_search.category.to_s}
@categories = @categories.sort_by{|category, saved_searches| category.to_s}
@@ -22,17 +25,6 @@ class SavedSearchesController < ApplicationController
@saved_search.destroy
end
def edit
@saved_search = saved_searches.find(params[:id])
end
def update
@saved_search = saved_searches.find(params[:id])
@saved_search.update_attributes(params[:saved_search])
flash[:notice] = "Saved search updated"
respond_with(@saved_search, :location => saved_searches_path)
end
private
def saved_searches

View File

@@ -3,12 +3,20 @@ class SavedSearch < ActiveRecord::Base
extend ActiveSupport::Concern
module ClassMethods
def refresh_listbooru(user_id)
return unless Danbooru.config.listbooru_auth_key
uri = URI.parse("#{Danbooru.config.listbooru_server}/users/#{user_id}")
Net::HTTP.get_response(uri)
end
def update_listbooru_on_create(user_id, query)
return unless Danbooru.config.listbooru_auth_key
uri = URI.parse("#{Danbooru.config.listbooru_server}/searches")
Net::HTTP.post_form(uri, {"user_id" => user_id, "query" => query, "key" => Danbooru.config.listbooru_auth_key})
end
def update_listbooru_on_destroy(user_id, query)
return unless Danbooru.config.listbooru_auth_key
uri = URI.parse("#{Danbooru.config.listbooru_server}/searches")
Net::HTTP.start(uri.host, uri.port) do |http|
req = Net::HTTP::Delete.new("/searches")

View File

@@ -222,7 +222,7 @@ Rails.application.routes.draw do
get "reports/user_promotions" => "reports#user_promotions"
get "reports/janitor_trials" => "reports#janitor_trials"
get "reports/contributors" => "reports#contributors"
resources :saved_searches
resources :saved_searches, :only => [:index, :create, :destroy]
resource :session do
collection do
get :sign_out