Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/models/abuse/trust_score.rb')
-rw-r--r--app/models/abuse/trust_score.rb15
1 files changed, 4 insertions, 11 deletions
diff --git a/app/models/abuse/trust_score.rb b/app/models/abuse/trust_score.rb
index b7ed504a0ba..2e8b7ed6686 100644
--- a/app/models/abuse/trust_score.rb
+++ b/app/models/abuse/trust_score.rb
@@ -2,9 +2,6 @@
module Abuse
class TrustScore < ApplicationRecord
- MAX_EVENTS = 100
- SPAMCHECK_HAM_THRESHOLD = 0.5
-
self.table_name = 'abuse_trust_scores'
enum source: Enums::Abuse::Source.sources
@@ -15,6 +12,9 @@ module Abuse
validates :score, presence: true
validates :source, presence: true
+ scope :order_created_at_asc, -> { order(created_at: :asc) }
+ scope :order_created_at_desc, -> { order(created_at: :desc) }
+
before_create :assign_correlation_id
after_commit :remove_old_scores
@@ -25,14 +25,7 @@ module Abuse
end
def remove_old_scores
- count = user.trust_scores_for_source(source).count
- return unless count > MAX_EVENTS
-
- TrustScore.delete(
- user.trust_scores_for_source(source)
- .order(created_at: :asc)
- .limit(count - MAX_EVENTS)
- )
+ Abuse::UserTrustScore.new(user).remove_old_scores(source)
end
end
end