mirror of
https://github.com/discourse/discourse.git
synced 2024-11-25 23:43:43 +08:00
e52bbc1230
* UX: add type tag and design update * UX: clarify status copy in reviewQ * DEV: switch to selectKit * UX: color approve/reject buttons in RQ * DEV: regroup actions * UX: add type tag and design update * UX: clarify status copy in reviewQ * Join questions for flagged post with "or" with new I18n function * Move ReviewableScores component out of context * Add CSS classes to reviewable-item based on human type * UX: add table header for scoring * UX: don't display % score * UX: prefix modifier class with dash * UX: reviewQ flag table styling * UX: consistent use of ignore icon * DEV: only show context question on pending status * UX: only show table headers on pending status * DEV: reviewQ regroup actions for hidden posts * UX: reviewQ > approve/reject buttons * UX: reviewQ add fadeout * UX: reviewQ styling * DEV: move scores back into component * UX: reviewQ mobile styling * UX: score table on mobile * UX: reviewQ > move meta info outside table * UX: reviewQ > score layout fixes * DEV: readd `agree_and_keep` and fix the spec tests. * Fix the spec tests * fix the quint test * DEV: readd deleting replies * UX: reviewQ copy tweaks * DEV: readd test for ignore + delete replies * Remove old * FIX: Add perform_ignore back in for backwards compat * DEV: add an action alias `ignore` for `ignore_and_do_nothing`. --------- Co-authored-by: Martin Brennan <martin@discourse.org> Co-authored-by: Vinoth Kannan <svkn.87@gmail.com>
27 lines
867 B
Ruby
27 lines
867 B
Ruby
# frozen_string_literal: true
|
|
|
|
# This job will automatically act on records that have gone unhandled on a
|
|
# queue for a long time.
|
|
module Jobs
|
|
class AutoQueueHandler < ::Jobs::Scheduled
|
|
every 1.day
|
|
|
|
def execute(args)
|
|
return if SiteSetting.auto_handle_queued_age.to_i.zero?
|
|
|
|
Reviewable
|
|
.pending
|
|
.where("created_at < ?", SiteSetting.auto_handle_queued_age.to_i.days.ago)
|
|
.each do |reviewable|
|
|
if reviewable.is_a?(ReviewableFlaggedPost)
|
|
reviewable.perform(Discourse.system_user, :ignore_and_do_nothing, expired: true)
|
|
elsif reviewable.is_a?(ReviewableQueuedPost)
|
|
reviewable.perform(Discourse.system_user, :reject_post)
|
|
elsif reviewable.is_a?(ReviewableUser)
|
|
reviewable.perform(Discourse.system_user, :delete_user)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|