module ActiveAdmin::Settings::ClassMethods
def default_settings
def default_settings @default_settings ||= {} end
def deprecated_setting(name, default, message = nil)
def deprecated_setting(name, default, message = nil) message = message || "The #{name} setting is deprecated and will be removed." setting(name, default) ActiveAdmin::Deprecation.deprecate self, name, message ActiveAdmin::Deprecation.deprecate self, :"#{name}=", message end
def setting(name, default)
def setting(name, default) default_settings[name] = default attr_accessor(name) # Create an accessor that grabs from the defaults # if @name has not been set yet class_eval <<-EOC, __FILE__, __LINE__ + 1 def #{name} if instance_variable_defined? :@#{name} @#{name} else read_default_setting(:#{name}) end end EOC end