diff --git a/lib/score_calculator.rb b/lib/score_calculator.rb index bfe91c29c..5cba290cb 100644 --- a/lib/score_calculator.rb +++ b/lib/score_calculator.rb @@ -3,10 +3,7 @@ module ScoreCalculator def self.hot_score(resource) return 0 unless resource.created_at - period = [ - Setting["hot_score_period_in_days"].to_i, - ((Time.current - resource.created_at) / 1.day).ceil - ].min + period = [max_period, resource_age(resource)].min votes_total = resource.votes_for.where("created_at >= ?", period.days.ago).count votes_up = resource.get_upvotes.where("created_at >= ?", period.days.ago).count @@ -27,4 +24,12 @@ module ScoreCalculator score * (votes_up / votes_total) * 100 end + def self.max_period + Setting["hot_score_period_in_days"].to_i + end + + def self.resource_age(resource) + ((Time.current - resource.created_at) / 1.day).ceil + end + end