Class: SortColumn

Inherits:
Object
  • Object
show all
Defined in:
lib/sql_search_n_sort/sort_column.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(column, opts = {}) ⇒ SortColumn



3
4
5
6
7
8
9
# File 'lib/sql_search_n_sort/sort_column.rb', line 3

def initialize(column, opts={})
  @column       = column.to_s
  @joined_table = opts[:joined_table]
  @display_text = opts[:display_text] 
  @show_asc     = (opts[:show_asc].nil? ? true : opts[:show_asc])
  @show_desc    = (opts[:show_desc].nil? ? true : opts[:show_desc])
end

Instance Attribute Details

#columnObject (readonly)

Returns the value of attribute column.



2
3
4
# File 'lib/sql_search_n_sort/sort_column.rb', line 2

def column
  @column
end

#display_textObject (readonly)

Returns the value of attribute display_text.



2
3
4
# File 'lib/sql_search_n_sort/sort_column.rb', line 2

def display_text
  @display_text
end

#joined_tableObject (readonly)

Returns the value of attribute joined_table.



2
3
4
# File 'lib/sql_search_n_sort/sort_column.rb', line 2

def joined_table
  @joined_table
end

#show_ascObject (readonly)

Returns the value of attribute show_asc.



2
3
4
# File 'lib/sql_search_n_sort/sort_column.rb', line 2

def show_asc
  @show_asc
end

#show_descObject (readonly)

Returns the value of attribute show_desc.



2
3
4
# File 'lib/sql_search_n_sort/sort_column.rb', line 2

def show_desc
  @show_desc
end

Instance Method Details

#human_nameObject



13
14
15
# File 'lib/sql_search_n_sort/sort_column.rb', line 13

def human_name
  name.humanize
end

#nameObject



10
11
12
# File 'lib/sql_search_n_sort/sort_column.rb', line 10

def name
  column.to_s
end

#select_optsObject



16
17
18
19
20
21
# File 'lib/sql_search_n_sort/sort_column.rb', line 16

def select_opts
  arr = []
  arr << ["#{display_text || human_name}",        "#{name}"]      if show_asc
  arr << ["#{display_text || human_name} [desc]", "#{name} desc"] if show_desc
  return arr
end