class EasySettings::Key

EasySettings::Key

Definition of easy setting key

Attributes

name[R]
options[R]

Public Class Methods

init(name, **options) click to toggle source
# File lib/redmine_extensions/easy_settings/key.rb, line 11
def self.init(name, **options)
  key_class =
    case options[:type].to_s
    when 'boolean', 'bool'
      BooleanKey
    when 'integer', 'int'
      IntegerKey
    when 'float'
      FloatKey
    else
      Key
    end

  key_class.new(name, **options)
end
new(name, **options) click to toggle source
# File lib/redmine_extensions/easy_settings/key.rb, line 27
def initialize(name, **options)
  @name = name
  @options = options
end

Public Instance Methods

after_save(easy_setting) click to toggle source
# File lib/redmine_extensions/easy_settings/key.rb, line 42
def after_save(easy_setting)
  if options[:after_save].is_a?(Proc)
    easy_setting.instance_eval(&options[:after_save])
  end
end
default() click to toggle source
# File lib/redmine_extensions/easy_settings/key.rb, line 32
def default
  @options[:default]
end
disabled_from_params?() click to toggle source
# File lib/redmine_extensions/easy_settings/key.rb, line 56
def disabled_from_params?
  !!options[:disabled_from_params]
end
from_params(easy_setting, value) click to toggle source
# File lib/redmine_extensions/easy_settings/key.rb, line 48
def from_params(easy_setting, value)
  if options[:from_params].is_a?(Proc)
    easy_setting.instance_exec(value, &options[:from_params])
  else
    value
  end
end
skip_blank_params?() click to toggle source
# File lib/redmine_extensions/easy_settings/key.rb, line 60
def skip_blank_params?
  !!options[:skip_blank_params]
end
validate(easy_setting) click to toggle source
# File lib/redmine_extensions/easy_settings/key.rb, line 36
def validate(easy_setting)
  if options[:validate].is_a?(Proc)
    easy_setting.instance_eval(&options[:validate])
  end
end