class ActiveScaffold::Config::List::UserSettings
Attributes
label[W]
nested_default_sorting[R]
Public Class Methods
new(conf, storage, params)
click to toggle source
Calls superclass method
# File lib/active_scaffold/config/list.rb, line 223 def initialize(conf, storage, params) super(conf, storage, params, :list) @sorting = nil end
Public Instance Methods
count_includes()
click to toggle source
# File lib/active_scaffold/config/list.rb, line 283 def count_includes @conf.count_includes end
default_sorting()
click to toggle source
# File lib/active_scaffold/config/list.rb, line 255 def default_sorting nested_default_sorting.nil? ? @conf.sorting.clone : nested_default_sorting end
label()
click to toggle source
This label has already been localized.
# File lib/active_scaffold/config/list.rb, line 230 def label self['label'] || @label || @conf.label end
nested_default_sorting=(options)
click to toggle source
# File lib/active_scaffold/config/list.rb, line 250 def nested_default_sorting=(options) @nested_default_sorting ||= @conf.sorting.clone @nested_default_sorting.set_nested_sorting(options[:table_name], options[:default_sorting]) end
page()
click to toggle source
# File lib/active_scaffold/config/list.rb, line 239 def page self['page'] = @params['page'] || 1 if @params.key?('page') || @conf.auto_pagination self['page'] || 1 end
page=(value = nil)
click to toggle source
# File lib/active_scaffold/config/list.rb, line 244 def page=(value = nil) self['page'] = value end
per_page()
click to toggle source
# File lib/active_scaffold/config/list.rb, line 234 def per_page self['per_page'] = @params['limit'].to_i if @params.key? 'limit' self['per_page'] || @conf.per_page end
sorting()
click to toggle source
# File lib/active_scaffold/config/list.rb, line 263 def sorting if @sorting.nil? # we want to store as little as possible in the session, but we want to return a Sorting data structure. so we recreate it each page load based on session data. self['sort'] = [@params['sort'], @params['sort_direction']] if @params['sort'] && @params['sort_direction'] self['sort'] = nil if @params['sort_direction'] == 'reset' if self['sort'] sorting = @conf.sorting.clone sorting.set(*self['sort']) @sorting = sorting else @sorting = default_sorting if @conf.columns.constraint_columns.present? @sorting.constraint_columns = @conf.columns.constraint_columns end end end @sorting end
user_sorting?()
click to toggle source
# File lib/active_scaffold/config/list.rb, line 259 def user_sorting? @params['sort'] && @params['sort_direction'] != 'reset' end