Sha256: c05f62b60e2925235a27a23dfb9b1a277dcc89dc959f9c0cb84d23cc7f001859

Contents?: true

Size: 661 Bytes

Versions: 14

Compression:

Stored size: 661 Bytes

Contents

module ClarkKent
  module ReportConfig
    include ClarkKent::Reportable
    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
  class ReportColumnConfig
    attr_accessor :name, :order_sql, :custom_select, :link, :time_zone_column, :time_format, :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

14 entries across 14 versions & 1 rubygems

Version Path
clark_kent-0.11.3 app/models/clark_kent/report_config.rb
clark_kent-0.11.2 app/models/clark_kent/report_config.rb
clark_kent-0.11.1 app/models/clark_kent/report_config.rb
clark_kent-0.11.0 app/models/clark_kent/report_config.rb
clark_kent-0.10.4 app/models/clark_kent/report_config.rb
clark_kent-0.10.2 app/models/clark_kent/report_config.rb
clark_kent-0.10.1 app/models/clark_kent/report_config.rb
clark_kent-0.10.0 app/models/clark_kent/report_config.rb
clark_kent-0.9.9 app/models/clark_kent/report_config.rb
clark_kent-0.9.8 app/models/clark_kent/report_config.rb
clark_kent-0.9.7 app/models/clark_kent/report_config.rb
clark_kent-0.9.6 app/models/clark_kent/report_config.rb
clark_kent-0.9.5 app/models/clark_kent/report_config.rb
clark_kent-0.9.4 app/models/clark_kent/report_config.rb