Class: Pageflow::Admin::EmbeddedIndexTable
- Inherits:
-
ViewComponent
- Object
- Arbre::Component
- ViewComponent
- Pageflow::Admin::EmbeddedIndexTable
show all
- Defined in:
- app/views/components/pageflow/admin/embedded_index_table.rb
Overview
Defined Under Namespace
Classes: SortColumnRecorder
Instance Attribute Summary collapse
Instance Method Summary
collapse
Instance Attribute Details
#base_collection ⇒ Object
6
7
8
|
# File 'app/views/components/pageflow/admin/embedded_index_table.rb', line 6
def base_collection
@base_collection
end
|
#scopes ⇒ Object
6
7
8
|
# File 'app/views/components/pageflow/admin/embedded_index_table.rb', line 6
def scopes
@scopes
end
|
Instance Method Details
#build(base_collection, options = {}) ⇒ Object
8
9
10
11
12
13
14
15
|
# File 'app/views/components/pageflow/admin/embedded_index_table.rb', line 8
def build(base_collection, options = {})
@base_collection = base_collection
@scopes = []
@sort_columns = []
@blank_slate_text = options[:blank_slate_text]
@model = options[:model]
super()
end
|
#scope(*args) ⇒ Object
17
18
19
20
21
22
23
|
# File 'app/views/components/pageflow/admin/embedded_index_table.rb', line 17
def scope(*args)
options = args.
title = args[0]
method = args[1]
options[:localizer] ||= ActiveAdmin::Localizers::ResourceLocalizer.new(@model&.model_name)
scopes << ActiveAdmin::Scope.new(title, method, options)
end
|
#table_for_collection(options = {}, &block) ⇒ Object
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'app/views/components/pageflow/admin/embedded_index_table.rb', line 25
def table_for_collection(options = {}, &block)
if scopes.any?
custom_scopes_renderer(scopes, default_scope: scopes.first.id)
end
record_sort_columns(&block) if options[:sortable]
if scoped_collection.any?
build_table(options, &block)
else
build_blank_slate
end
end
|