discourse/app/jobs/scheduled/clean_up_unmatched_ips.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

23 lines
559 B
Ruby
Raw Normal View History

# frozen_string_literal: true
module Jobs
class CleanUpUnmatchedIPs < ::Jobs::Scheduled
every 1.day
2014-11-26 01:45:45 +08:00
def execute(args)
# roll-up IP addresses first
ScreenedIpAddress.roll_up
last_match_threshold = SiteSetting.max_age_unmatched_ips.days.ago
# remove old unmatched IP addresses
ScreenedIpAddress.where(action_type: ScreenedIpAddress.actions[:block])
.where("last_match_at < ? OR (last_match_at IS NULL AND created_at < ?)", last_match_threshold, last_match_threshold)
.destroy_all
end
end
end