class SortableTable::SortTable

Attributes

column_definitions[R]
default_column[R]
default_direction[R]

Public Class Methods

new(column_definitions, options = {}) click to toggle source
# File lib/sortable_table/models/sort_table.rb, line 5
def initialize(column_definitions, options = {})
  @default_column = options[:default_column] || column_definitions.first.column
  @default_direction = options[:default_direction] || :asc
  @column_definitions = column_definitions.each_with_object({}) do |column_definition, acc|
    acc[column_definition.column] = column_definition
    acc
  end
end

Public Instance Methods

sort_column(column, direction) click to toggle source
# File lib/sortable_table/models/sort_table.rb, line 14
def sort_column(column, direction)
  column_definition = column_definitions[column] || (column && column_definitions[column.to_sym]) || column_definitions[default_column]
  column_definition.create_sort_column(direction || default_direction.to_s)
end