2019-05-02 18:17:27 -04:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2013-02-05 14:16:51 -05:00
|
|
|
require 'image_sizer'
|
|
|
|
|
|
|
|
module Jobs
|
|
|
|
|
2019-10-02 00:01:53 -04:00
|
|
|
class SendSystemMessage < ::Jobs::Base
|
2013-02-05 14:16:51 -05:00
|
|
|
|
2013-02-25 11:42:20 -05:00
|
|
|
def execute(args)
|
2013-02-05 14:16:51 -05:00
|
|
|
raise Discourse::InvalidParameters.new(:user_id) unless args[:user_id].present?
|
|
|
|
raise Discourse::InvalidParameters.new(:message_type) unless args[:message_type].present?
|
|
|
|
|
2014-05-06 09:41:59 -04:00
|
|
|
user = User.find_by(id: args[:user_id])
|
2013-02-05 14:16:51 -05:00
|
|
|
return if user.blank?
|
2013-02-25 11:42:20 -05:00
|
|
|
|
2013-02-05 14:16:51 -05:00
|
|
|
system_message = SystemMessage.new(user)
|
2017-09-12 15:43:03 -04:00
|
|
|
system_message.create(args[:message_type], args[:message_options]&.symbolize_keys || {})
|
2013-02-05 14:16:51 -05:00
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|