Module: FtGem::Services::BetaService

Defined in:
lib/ft_gem/services/beta_service.rb

Class Method Summary collapse

Class Method Details

.private_beta?(user_id: nil, toggles: nil, index: "") ⇒ Boolean

Returns:

  • (Boolean)


4
5
6
7
8
9
10
11
12
# File 'lib/ft_gem/services/beta_service.rb', line 4

def self.private_beta?(user_id: nil, toggles: nil, index: "")
  return false unless user_id.present?
  return false unless toggles.present?

  attributes = toggles[index.to_i].dig('attributes')

  Rails.logger.info("########### PRIVATE BETA status: #{attributes['status']}, include users: #{attributes['beta-users'].split(",").include?(user_id.to_s)} ################")
  attributes['status'] == "privatebeta" && attributes['beta-users'].split(",").include?(user_id.to_s)
end

.public_beta?(cookie: nil, toggles: nil, index: "") ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
17
18
19
20
21
# File 'lib/ft_gem/services/beta_service.rb', line 14

def self.public_beta?(cookie: nil, toggles: nil, index: "")
  return false unless toggles.present?

  attributes = toggles.dig(index.to_i, 'attributes')

  Rails.logger.info("########### PUBLIC BETA cookie: #{cookie}, status: #{attributes['status']} ################")
  attributes['status'] == "publicbeta" && cookie.present?
end