# frozen_string_literal: true module Jobs class UpdateGravatar < ::Jobs::Base sidekiq_options queue: "low" def execute(args) user = User.find_by(id: args[:user_id]) avatar = UserAvatar.find_by(id: args[:avatar_id]) if user && avatar && avatar.user&.id == user.id && user.primary_email.present? 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