about summary refs log tree commit diff
path: root/app/models/instance.rb
blob: 3c740f8a2bc7dc50554db94fe082a12439fcc2bf (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# frozen_string_literal: true

class Instance
  include ActiveModel::Model

  attr_accessor :domain, :accounts_count, :domain_block

  def initialize(resource)
    @domain         = resource.domain
    @accounts_count = resource.respond_to?(:accounts_count) ? resource.accounts_count : nil
    @domain_block   = resource.is_a?(DomainBlock) ? resource : DomainBlock.rule_for(domain)
    @domain_allow   = resource.is_a?(DomainAllow) ? resource : DomainAllow.rule_for(domain)
  end

  def countable?
    @accounts_count.present?
  end

  def to_param
    domain
  end

  def cache_key
    domain
  end
end