2019-05-02 18:17:27 -04:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2014-12-15 16:10:27 -05:00
|
|
|
module Jobs
|
2019-10-02 00:01:53 -04:00
|
|
|
class UpdateGravatar < ::Jobs::Base
|
2014-12-15 16:10:27 -05:00
|
|
|
|
2016-04-06 22:56:43 -04:00
|
|
|
sidekiq_options queue: 'low'
|
|
|
|
|
2014-12-15 16:10:27 -05:00
|
|
|
def execute(args)
|
|
|
|
user = User.find_by(id: args[:user_id])
|
|
|
|
avatar = UserAvatar.find_by(id: args[:avatar_id])
|
|
|
|
|
2020-09-02 22:12:24 -04:00
|
|
|
if user && avatar && avatar.user&.id == user.id && user.primary_email.present?
|
2014-12-15 16:10:27 -05:00
|
|
|
avatar.update_gravatar!
|
|
|
|
if !user.uploaded_avatar_id && avatar.gravatar_upload_id
|
|
|
|
user.update_column(:uploaded_avatar_id, avatar.gravatar_upload_id)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|