class EmailAddress::Config

Attributes

providers[R]

Public Class Methods

all_settings(*configs) click to toggle source
# File lib/email_address/config.rb, line 217
def self.all_settings(*configs)
  config = @config.clone
  configs.each { |c| config.merge!(c) }
  config
end
configure(config = {}) click to toggle source

Set multiple default configuration settings

# File lib/email_address/config.rb, line 175
def self.configure(config = {})
  @config.merge!(config)
end
error_message(name, locale = "en") click to toggle source
# File lib/email_address/config.rb, line 199
def self.error_message(name, locale = "en")
  @errors.dig(locale, "email_address", name.to_s) || name.to_s
end
error_messages(hash = {}, locale = "en", *extra) click to toggle source

Customize your own error message text.

# File lib/email_address/config.rb, line 204
def self.error_messages(hash = {}, locale = "en", *extra)
  hash = extra.first if extra.first.is_a? Hash

  @errors[locale] ||= {}
  @errors[locale]["email_address"] ||= {}

  unless hash.nil? || hash.empty?
    @errors[locale]["email_address"] = @errors[locale]["email_address"].merge(hash)
  end

  @errors[locale]["email_address"]
end
new(overrides = {}) click to toggle source
# File lib/email_address/config.rb, line 223
def initialize(overrides = {})
  @config = Config.all_settings(overrides)
end
provider(name, config = {}) click to toggle source

Configure or lookup a provider by name.

# File lib/email_address/config.rb, line 191
def self.provider(name, config = {})
  name = name.to_sym
  if config.size > 0
    @providers[name.to_sym] = config
  end
  @providers[name]
end
setting(name, *value) click to toggle source
# File lib/email_address/config.rb, line 179
def self.setting(name, *value)
  name = name.to_sym
  @config[name] = value.first if value.size > 0
  @config[name]
end

Public Instance Methods

[](setting) click to toggle source
# File lib/email_address/config.rb, line 231
def [](setting)
  @config[setting.to_sym]
end
[]=(setting, value) click to toggle source
# File lib/email_address/config.rb, line 227
def []=(setting, value)
  @config[setting.to_sym] = value
end
configure(settings) click to toggle source
# File lib/email_address/config.rb, line 235
def configure(settings)
  @config = @config.merge(settings)
end
to_h() click to toggle source
# File lib/email_address/config.rb, line 239
def to_h
  @config
end