summaryrefslogtreecommitdiff
path: root/app/models/members_preloader.rb
blob: 8b8eca5455097756fd3003c81ac153a155cfa9d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# frozen_string_literal: true

class MembersPreloader
  attr_reader :members

  def initialize(members)
    @members = members
  end

  def preload_all
    ActiveRecord::Associations::Preloader.new.preload(members, :user)
    ActiveRecord::Associations::Preloader.new.preload(members, :source)
    ActiveRecord::Associations::Preloader.new.preload(members, :created_by)
    ActiveRecord::Associations::Preloader.new.preload(members, user: :status)
    ActiveRecord::Associations::Preloader.new.preload(members, user: :u2f_registrations)
    ActiveRecord::Associations::Preloader.new.preload(members, user: :webauthn_registrations) if Feature.enabled?(:webauthn, default_enabled: :yaml)
  end
end

MembersPreloader.prepend_mod_with('MembersPreloader')