discourse/app/jobs/regular/send_system_message.rb

23 lines
551 B
Ruby
Raw Normal View History

# frozen_string_literal: true
2013-02-06 03:16:51 +08:00
require 'image_sizer'
module Jobs
class SendSystemMessage < ::Jobs::Base
2013-02-06 03:16:51 +08:00
2013-02-26 00:42:20 +08:00
def execute(args)
2013-02-06 03:16:51 +08:00
raise Discourse::InvalidParameters.new(:user_id) unless args[:user_id].present?
raise Discourse::InvalidParameters.new(:message_type) unless args[:message_type].present?
user = User.find_by(id: args[:user_id])
2013-02-06 03:16:51 +08:00
return if user.blank?
2013-02-26 00:42:20 +08:00
2013-02-06 03:16:51 +08:00
system_message = SystemMessage.new(user)
system_message.create(args[:message_type], args[:message_options]&.symbolize_keys || {})
2013-02-06 03:16:51 +08:00
end
end
end