class PhiltreRails::OrderLink

Used by order_by helper to generate ordering links.

Attributes

active[R]
expr[R]

Public Class Methods

new( expr, active: false ) click to toggle source

expr is a Sequel::SQL::OrderedExpression

# File lib/philtre-rails/order_link.rb, line 5
def initialize( expr, active: false )
  @expr = expr
  @active = active
end

Public Instance Methods

css_class() click to toggle source

class of the generated <a…>

# File lib/philtre-rails/order_link.rb, line 20
def css_class
  if active
    expr.descending ? 'descending' : 'ascending'
  end
end
icon() click to toggle source

appended to the label

# File lib/philtre-rails/order_link.rb, line 13
def icon
  if active
    expr.descending ? '&#9660;' : '&#9650;'
  end
end
name() click to toggle source

this value ends up in the order array of the parameter hash

# File lib/philtre-rails/order_link.rb, line 27
def name
  if active
    expr.descending ? "#{expr.expression}_desc" : "#{expr.expression}_asc"
  else
    expr.expression
  end.to_s
end