Remove deletion appeal thread updater.
It was already disabled before, remove it completely now.
This commit is contained in:
@@ -4,7 +4,6 @@ module DanbooruMaintenance
|
||||
def hourly
|
||||
safely { Upload.prune! }
|
||||
safely { PostPruner.prune! }
|
||||
#safely { PostAppealForumUpdater.update_forum! }
|
||||
safely { RateLimit.prune! }
|
||||
safely { regenerate_post_counts! }
|
||||
end
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
# Posts new appeals to the Deletion appeal thread once per hour.
|
||||
#
|
||||
# @see DanbooruMaintenance#hourly
|
||||
module PostAppealForumUpdater
|
||||
APPEAL_TOPIC_TITLE = "Deletion appeal thread"
|
||||
|
||||
def self.update_forum!
|
||||
return if pending_appeals.empty?
|
||||
|
||||
CurrentUser.scoped(User.system) do
|
||||
topic = ForumTopic.order(:id).create_with(creator: User.system).find_or_create_by!(title: APPEAL_TOPIC_TITLE)
|
||||
ForumPost.create!(creator: User.system, topic: topic, body: forum_post_body)
|
||||
end
|
||||
end
|
||||
|
||||
def self.pending_appeals
|
||||
PostAppeal.pending.where(created_at: (1.hour.ago..Time.zone.now)).order(post_id: :asc)
|
||||
end
|
||||
|
||||
def self.forum_post_body
|
||||
pending_appeals.map do |appeal|
|
||||
if appeal.reason.present?
|
||||
"post ##{appeal.post_id}: #{appeal.reason}"
|
||||
else
|
||||
"post ##{appeal.post_id}"
|
||||
end
|
||||
end.join("\n")
|
||||
end
|
||||
end
|
||||
@@ -38,32 +38,4 @@ class DanbooruMaintenanceTest < ActiveSupport::TestCase
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context "PostAppealForumUpdater" do
|
||||
should "work when there are no pending appeals" do
|
||||
assert_nothing_raised do
|
||||
PostAppealForumUpdater.update_forum!
|
||||
end
|
||||
end
|
||||
|
||||
should "post pending appeals to the deletion appeal thread" do
|
||||
@topic = as(create(:user)) { create(:forum_topic, title: PostAppealForumUpdater::APPEAL_TOPIC_TITLE) }
|
||||
@appeal1 = create(:post_appeal, reason: "test")
|
||||
@appeal2 = create(:post_appeal, reason: "")
|
||||
@appeal3 = create(:post_appeal, created_at: 2.hours.ago)
|
||||
|
||||
PostAppealForumUpdater.update_forum!
|
||||
|
||||
assert_equal(@topic.id, ForumPost.last.topic_id)
|
||||
assert_equal("post ##{@appeal1.post_id}: #{@appeal1.reason}\npost ##{@appeal2.post_id}", ForumPost.last.body)
|
||||
end
|
||||
|
||||
should "create the deletion appeal thread if it doesn't already exist" do
|
||||
@appeal = create(:post_appeal, reason: "")
|
||||
PostAppealForumUpdater.update_forum!
|
||||
|
||||
assert_equal(PostAppealForumUpdater::APPEAL_TOPIC_TITLE, ForumPost.last.topic.title)
|
||||
assert_equal("post ##{@appeal.post_id}", ForumPost.last.body)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user