Module: SmartTable::SmartTableConcern
- Extended by:
- ActiveSupport::Concern
- Defined in:
- app/controllers/concerns/smart_table/smart_table_concern.rb
Defined Under Namespace
Classes: Params
Instance Method Summary collapse
Instance Method Details
#smart_table_params(initial_page_size: 25, initial_sort_attribute: nil, initial_sort_order: :asc, remote: false) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'app/controllers/concerns/smart_table/smart_table_concern.rb', line 29 def smart_table_params(initial_page_size: 25, initial_sort_attribute: nil, initial_sort_order: :asc, remote: false) return @st_params if @st_params @st_params = Params.new @st_params.remote = remote @st_params.sort = params[SORT_PARAM] if @st_params.sort.nil? && initial_sort_attribute @st_params.sort = "#{initial_sort_attribute} #{initial_sort_order}" end @st_params.search = params[SEARCH_PARAM] @st_params.page_size = params[PAGE_SIZE_PARAM] || initial_page_size if @st_params.page_size == SHOW_ALL @st_params.page_size = nil else @st_params.page_size = @st_params.page_size.to_i if params[PAGE_PARAM].present? && params[PAGE_PARAM] =~ /\d+/ page = params[PAGE_PARAM].to_i page = 1 if page < 1 @st_params.page_number = page end end @st_params end |