class Sidebar
encoding: utf-8
Public Class Methods
description(desc = nil)
click to toggle source
# File lib/sidebar.rb, line 161 def description(desc = nil) if desc @description = desc else @description end end
display_name(new_dn = nil)
click to toggle source
# File lib/sidebar.rb, line 185 def display_name(new_dn = nil) @display_name = new_dn if new_dn @display_name || short_name.humanize end
fieldmap()
click to toggle source
# File lib/sidebar.rb, line 149 def fieldmap @fieldmap ||= {} end
instantiate(attrs = nil, allocating = false)
click to toggle source
Calls superclass method
# File lib/sidebar.rb, line 190 def instantiate(attrs = nil, allocating = false) doc = super(attrs,allocating) param_fields.each do |field| unless doc.config.has_key?(field.key) doc.config[field.key] = field.default end end doc end
lifetime(timeout = nil)
click to toggle source
# File lib/sidebar.rb, line 169 def lifetime(timeout = nil) if timeout @lifetime = timeout else @lifetime end end
new(*args) { |instance| ... }
click to toggle source
Calls superclass method
# File lib/sidebar.rb, line 201 def initialize(*args) if block_given? super(*args) { |instance| yield instance } else super(*args) end self.class.param_fields.each do |field| unless config.has_key?(field.key) config[field.key] = field.default end end end
param_fields()
click to toggle source
# File lib/sidebar.rb, line 153 def param_fields @param_fields ||= [] end
param_fields=(newval)
click to toggle source
# File lib/sidebar.rb, line 157 def param_fields=(newval) @param_fields = newval end
path_name()
click to toggle source
# File lib/sidebar.rb, line 181 def path_name self.to_s.underscore end
setting(key, default=nil, options = { })
click to toggle source
# File lib/sidebar.rb, line 137 def setting(key, default=nil, options = { }) return if instance_methods.include?(key.to_s) param_fields << ParamField.build(key.to_s, default, options) fieldmap.update(key.to_s => param_fields.last) self.send(:define_method, key) do self.config[key.to_s] end self.send(:define_method, "#{key}=") do |newval| self.config[key.to_s] = newval end end
short_name()
click to toggle source
# File lib/sidebar.rb, line 177 def short_name self.to_s.underscore.split(%r{_}).first end
Public Instance Methods
content_partial()
click to toggle source
# File lib/sidebar.rb, line 245 def content_partial "/#{self.class.path_name}/content" end
description()
click to toggle source
# File lib/sidebar.rb, line 233 def description self.class.description end
display_name()
click to toggle source
# File lib/sidebar.rb, line 241 def display_name self.class.display_name end
fieldmap(field = nil)
click to toggle source
# File lib/sidebar.rb, line 225 def fieldmap(field = nil) if field self.class.fieldmap[field.to_s] else self.class.fieldmap end end
html_id()
click to toggle source
# File lib/sidebar.rb, line 214 def html_id short_name + '-' + id.to_s end
lifetime()
click to toggle source
# File lib/sidebar.rb, line 255 def lifetime self.class.lifetime end
param_fields()
click to toggle source
# File lib/sidebar.rb, line 221 def param_fields self.class.param_fields end
parse_request(params,contents,current_user)
click to toggle source
# File lib/sidebar.rb, line 218 def parse_request(params,contents,current_user) end
short_name()
click to toggle source
# File lib/sidebar.rb, line 237 def short_name self.class.short_name end
to_locals_hash()
click to toggle source
# File lib/sidebar.rb, line 249 def to_locals_hash param_fields.inject({ :sidebar => self }) do |hash, field| hash.merge(field.key => config[field.key]) end end