class EasySettings::Mapper

Public Class Methods

new() click to toggle source
# File lib/redmine_extensions/easy_settings/mapper.rb, line 4
def initialize
  @all_keys = {}
end

Public Instance Methods

add_key(name, **options, &block)
Alias for: key
add_keys(*names, **options, &block)
Alias for: keys
after_save(easy_setting) click to toggle source
# File lib/redmine_extensions/easy_settings/mapper.rb, line 54
def after_save(easy_setting)
  if @all_keys.has_key?(easy_setting.name)
    @all_keys[easy_setting.name].after_save(easy_setting)
  else
    true
  end
end
boolean_keys(*names) click to toggle source

Shortcust due to frequent usage

# File lib/redmine_extensions/easy_settings/mapper.rb, line 32
def boolean_keys(*names)
  names.each do |name|
    key(name, type: 'boolean')
  end
end
default_values() click to toggle source
# File lib/redmine_extensions/easy_settings/mapper.rb, line 38
def default_values
  values = {}
  @all_keys.each do |name, key|
    values[name] = key.default
  end
  values
end
disabled_from_params?(easy_setting) click to toggle source
# File lib/redmine_extensions/easy_settings/mapper.rb, line 70
def disabled_from_params?(easy_setting)
  if @all_keys.has_key?(easy_setting.name)
    @all_keys[easy_setting.name].disabled_from_params?
  else
    false
  end
end
from_params(easy_setting, value) click to toggle source
# File lib/redmine_extensions/easy_settings/mapper.rb, line 62
def from_params(easy_setting, value)
  if @all_keys.has_key?(easy_setting.name)
    @all_keys[easy_setting.name].from_params(easy_setting, value)
  else
    value
  end
end
key(name, **options, &block) click to toggle source

Be careful for double definition of the same key Last definition wins

# File lib/redmine_extensions/easy_settings/mapper.rb, line 10
def key(name, **options, &block)
  name = name.to_s

  if block
    key_dsl = EasySettings::KeyDSL.new
    key_dsl.instance_eval(&block)
    options = options.merge(key_dsl.options)
  end

  EasySetting.mapper_clear_caches
  @all_keys[name] = EasySettings::Key.init(name, **options)
end
Also aliased as: add_key
keys(*names, **options, &block) click to toggle source
# File lib/redmine_extensions/easy_settings/mapper.rb, line 24
def keys(*names, **options, &block)
  names.each do |name|
    key(name, **options, &block)
  end
end
Also aliased as: add_keys
skip_blank_params?(easy_setting) click to toggle source
# File lib/redmine_extensions/easy_settings/mapper.rb, line 78
def skip_blank_params?(easy_setting)
  if @all_keys.has_key?(easy_setting.name)
    @all_keys[easy_setting.name].skip_blank_params?
  else
    false
  end
end
validate(easy_setting) click to toggle source
# File lib/redmine_extensions/easy_settings/mapper.rb, line 46
def validate(easy_setting)
  if @all_keys.has_key?(easy_setting.name)
    @all_keys[easy_setting.name].validate(easy_setting)
  else
    true
  end
end