23 lines
583 B
Ruby
23 lines
583 B
Ruby
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
|