mirror of
https://github.com/discourse/discourse.git
synced 2024-12-15 04:36:29 +08:00
30990006a9
This reduces chances of errors where consumers of strings mutate inputs and reduces memory usage of the app. Test suite passes now, but there may be some stuff left, so we will run a few sites on a branch prior to merging
24 lines
568 B
Ruby
24 lines
568 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Jobs
|
|
|
|
class FeatureTopicUsers < Jobs::Base
|
|
|
|
def execute(args)
|
|
topic_id = args[:topic_id]
|
|
raise Discourse::InvalidParameters.new(:topic_id) unless topic_id.present?
|
|
|
|
topic = Topic.find_by(id: topic_id)
|
|
|
|
# Topic may be hard deleted due to spam, no point complaining
|
|
# we would have to look at the topics table id sequence to find cases
|
|
# where this was called with an invalid id, no point really
|
|
return unless topic.present?
|
|
|
|
topic.feature_topic_users(args)
|
|
end
|
|
|
|
end
|
|
|
|
end
|