2017-05-31 21:38:44 +03:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
class Instance
|
|
|
|
include ActiveModel::Model
|
|
|
|
|
2019-01-08 14:39:49 +02:00
|
|
|
attr_accessor :domain, :accounts_count, :domain_block
|
2017-05-31 21:38:44 +03:00
|
|
|
|
2019-01-08 14:39:49 +02:00
|
|
|
def initialize(resource)
|
|
|
|
@domain = resource.domain
|
2019-07-30 12:10:46 +03:00
|
|
|
@accounts_count = resource.respond_to?(:accounts_count) ? resource.accounts_count : nil
|
2019-06-22 01:13:10 +03:00
|
|
|
@domain_block = resource.is_a?(DomainBlock) ? resource : DomainBlock.rule_for(domain)
|
2019-07-30 12:10:46 +03:00
|
|
|
@domain_allow = resource.is_a?(DomainAllow) ? resource : DomainAllow.rule_for(domain)
|
2019-01-08 14:39:49 +02:00
|
|
|
end
|
|
|
|
|
2019-06-22 01:39:09 +03:00
|
|
|
def countable?
|
|
|
|
@accounts_count.present?
|
2019-03-26 01:36:35 +02:00
|
|
|
end
|
|
|
|
|
2019-01-08 14:39:49 +02:00
|
|
|
def to_param
|
|
|
|
domain
|
|
|
|
end
|
|
|
|
|
|
|
|
def cache_key
|
|
|
|
domain
|
2017-05-31 21:38:44 +03:00
|
|
|
end
|
|
|
|
end
|