From 98dfae2c7ffb1eb3ceb512483a3d69aa50d011cd Mon Sep 17 00:00:00 2001 From: r888888888 Date: Tue, 27 Oct 2015 18:01:35 -0700 Subject: [PATCH] ping listbooru when scanning saved searches #2523 --- app/controllers/saved_searches_controller.rb | 14 +++----------- app/models/saved_search.rb | 8 ++++++++ config/routes.rb | 2 +- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/controllers/saved_searches_controller.rb b/app/controllers/saved_searches_controller.rb index 92b94a8eb..9088f140f 100644 --- a/app/controllers/saved_searches_controller.rb +++ b/app/controllers/saved_searches_controller.rb @@ -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 diff --git a/app/models/saved_search.rb b/app/models/saved_search.rb index 1c9163c1f..6ef423e7a 100644 --- a/app/models/saved_search.rb +++ b/app/models/saved_search.rb @@ -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") diff --git a/config/routes.rb b/config/routes.rb index 45d4de9cd..f980874f7 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -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