# frozen_string_literal: true module Jobs class BulkUserTitleUpdate < ::Jobs::Base UPDATE_ACTION = 'update' RESET_ACTION = 'reset' def execute(args) new_title = args[:new_title] granted_badge_id = args[:granted_badge_id] action = args[:action] badge = Badge.find(granted_badge_id) rescue nil return unless badge # Deleted badge protection case action when UPDATE_ACTION badge.update_user_titles!(new_title) when RESET_ACTION badge.reset_user_titles! end end end end