Sha256: 699441531896471fa942f07f4f73dfb80c5fdade6c007cd172fc21b11587ff92
Contents?: true
Size: 737 Bytes
Versions: 15
Compression:
Stored size: 737 Bytes
Contents
module ClarkKent module ReportConfig module ClassMethods def filter_config(params) filter_option_class = ('ClarkKent::' + ((params[:kind] + '_option').camelcase)).constantize filter_option_class.new(params) end def column_config(params) ClarkKent::ReportColumnConfig.new(params) end end extend ClassMethods def self.included( other ) other.extend( ClassMethods ) end end class ReportColumnConfig attr_accessor :name, :order_sql, :custom_select, :link, :summarizable, :includes, :joins, :extra_scopes, :where, :group def initialize params = {} params.each { |key, value| send "#{key}=", value } end def id name end end end
Version data entries
15 entries across 15 versions & 1 rubygems