fixes #2203
This commit is contained in:
@@ -8,6 +8,7 @@ class DailyMaintenance
|
|||||||
Delayed::Job.delete_all(['created_at < ?', 7.days.ago])
|
Delayed::Job.delete_all(['created_at < ?', 7.days.ago])
|
||||||
PostVote.delete_all(['created_at < ?', 1.month.ago])
|
PostVote.delete_all(['created_at < ?', 1.month.ago])
|
||||||
CommentVote.delete_all(['created_at < ?', 1.month.ago])
|
CommentVote.delete_all(['created_at < ?', 1.month.ago])
|
||||||
|
UserUploadClamper.new.clamp_all!
|
||||||
TagSubscription.process_all
|
TagSubscription.process_all
|
||||||
ApiCacheGenerator.new.generate_tag_cache
|
ApiCacheGenerator.new.generate_tag_cache
|
||||||
end
|
end
|
||||||
|
|||||||
22
app/logical/user_upload_clamper.rb
Normal file
22
app/logical/user_upload_clamper.rb
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
class UserUploadClamper
|
||||||
|
def clamp_all!
|
||||||
|
users.each do |user|
|
||||||
|
if clamp_user?(user)
|
||||||
|
clamp_user!(user)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def users
|
||||||
|
User.where("post_upload_count >= 200 and (base_upload_limit > 10 or base_upload_limit is null) and level < ?", User::Levels::CONTRIBUTOR).limit(50)
|
||||||
|
end
|
||||||
|
|
||||||
|
def clamp_user?(user)
|
||||||
|
Reports::UserPromotions.deletion_confidence_interval_for(user) >= 25
|
||||||
|
end
|
||||||
|
|
||||||
|
def clamp_user!(user)
|
||||||
|
user.update_attribute(:base_upload_limit, -1)
|
||||||
|
ModAction.create(:description => "user ##{user.id} (#{user.name}) clamped")
|
||||||
|
end
|
||||||
|
end
|
||||||
Reference in New Issue
Block a user