Class: ActiveAdmin::DynamicCSVBuilder

Inherits:
CSVBuilder
  • Object
show all
Defined in:
lib/activeadmin_dynamic_table/dynamic_csv_builder.rb

Instance Method Summary collapse

Instance Method Details

#build_row(resource, columns, options) ⇒ Object



16
17
18
19
20
21
# File 'lib/activeadmin_dynamic_table/dynamic_csv_builder.rb', line 16

def build_row(resource, columns, options)
  columns.map do |column|
    content = call_method_or_proc_on(resource, column.data)
    encode view_context.strip_tags(content.to_s), options
  end
end

#exec_columns(view_context = nil) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
# File 'lib/activeadmin_dynamic_table/dynamic_csv_builder.rb', line 3

def exec_columns(view_context = nil)
  @view_context = view_context
  settings = ActiveadminDynamicTable::SettingStringParser.new(@view_context.params[:columns])

  @configurator = ActiveadminDynamicTable::Configurator.new(self, settings.parse)
  @columns = [] # we want to re-render these every instance

  instance_exec &@block
  @configurator.columns

  columns
end

#register_actions(*args, &block) ⇒ Object



31
# File 'lib/activeadmin_dynamic_table/dynamic_csv_builder.rb', line 31

def register_actions(*args, &block); end

#register_column(*args, &block) ⇒ Object



23
24
25
# File 'lib/activeadmin_dynamic_table/dynamic_csv_builder.rb', line 23

def register_column(*args, &block)
  @configurator.register_column(:column, *args, &block)
end

#register_id_column(*args, &block) ⇒ Object



27
28
29
# File 'lib/activeadmin_dynamic_table/dynamic_csv_builder.rb', line 27

def register_id_column(*args, &block)
  @configurator.register_column(:column, :id, key: :id)
end

#selectable_columnObject



32
# File 'lib/activeadmin_dynamic_table/dynamic_csv_builder.rb', line 32

def selectable_column; end