Sha256: db0504a9f78ee09eec7f7271936afa83cdc794419eb072699e853c0820d60cd7

Contents?: true

Size: 1.04 KB

Versions: 33

Compression:

Stored size: 1.04 KB

Contents

# frozen_string_literal: true

#
# Switchboard configuration, both the fields and methods needed to determine configuration
#
module SwitchboardConfiguration
  extend ActiveSupport::Concern
  #
  # Switchboard configuration
  #
  def self.included(base)
    base.class_eval do
      # Switchboard
      field :switchboard_base_url, type: String, default: 'https://switchboard.app47.com'
      field :switchboard_stack_id, type: String
      field :switchboard_stack_api_token, type: String
      field :switchboard_last_sync_at, type: Time
      #
      # Validations
      #
      validates :switchboard_base_url, url: true
    end
  end

  #
  # Make sure the password doesn't get blanked out on an update
  #
  def secure_fields
    super + %i[switchboard_stack_api_token]
  end

  #
  # Public: Determine if switchboard is configured
  #
  # Examples
  #
  #   switchboard_configured?
  #   # => true || false
  #
  def switchboard_configured?
    [switchboard_base_url.present?, switchboard_stack_api_token.present?, switchboard_stack_id.present?].all?
  end
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
web47core-3.2.20 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.19 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.18 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.17 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.16 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.15 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.14 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.13 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.12 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.9 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.8 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.7 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.6 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.5 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.4 lib/app/models/concerns/switchboard_configuration.rb
web47core-2.2.20 lib/app/models/concerns/switchboard_configuration.rb
web47core-2.2.19 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.3 lib/app/models/concerns/switchboard_configuration.rb
web47core-3.2.2 lib/app/models/concerns/switchboard_configuration.rb
web47core-2.2.15 lib/app/models/concerns/switchboard_configuration.rb