This repository has been archived on 2024-06-09. You can view files and clone it, but cannot push or open issues/pull-requests.
2017-03-03 23:45:48 +01:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
class DigestMailerWorker
|
|
|
|
include Sidekiq::Worker
|
|
|
|
|
|
|
|
sidekiq_options queue: 'mailers'
|
|
|
|
|
2017-05-10 15:45:43 +02:00
|
|
|
attr_reader :user
|
|
|
|
|
2017-03-03 23:45:48 +01:00
|
|
|
def perform(user_id)
|
2017-05-10 15:45:43 +02:00
|
|
|
@user = User.find(user_id)
|
|
|
|
deliver_digest if user_receives_digest?
|
|
|
|
end
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def deliver_digest
|
2017-03-03 23:45:48 +01:00
|
|
|
NotificationMailer.digest(user.account).deliver_now!
|
|
|
|
user.touch(:last_emailed_at)
|
|
|
|
end
|
2017-05-10 15:45:43 +02:00
|
|
|
|
|
|
|
def user_receives_digest?
|
|
|
|
user.settings.notification_emails['digest']
|
|
|
|
end
|
2017-03-03 23:45:48 +01:00
|
|
|
end
|