Module: ZableHelper

Includes:
Zable::WillPaginate
Defined in:
app/helpers/zable_helper.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



4
5
6
# File 'app/helpers/zable_helper.rb', line 4

def self.included(base)
  base.send :include, Zable::Html
end

Instance Method Details

#current_sort_orderObject



17
18
19
# File 'app/helpers/zable_helper.rb', line 17

def current_sort_order
  params[:sort][:order].downcase.to_sym rescue :asc
end


21
22
23
24
# File 'app/helpers/zable_helper.rb', line 21

def link_sort_order(name)
  return nil unless sorted_column?(name)
  current_sort_order == :desc ? :asc : :desc
end

#set_page_size_path(page_size = nil) ⇒ Object



26
27
28
29
30
31
32
33
# File 'app/helpers/zable_helper.rb', line 26

def set_page_size_path(page_size = nil)
  page_params = if page_size
    { :page => {:size => page_size, :num => 1} }
  else
    { :page => {:size => 'all'} }
  end
  current_path_with_params(params.slice(:sort, :search), page_params)
end

#sorted_column?(name) ⇒ Boolean

Returns:

  • (Boolean)


13
14
15
# File 'app/helpers/zable_helper.rb', line 13

def sorted_column?(name)
  params[:sort][:attr] == name.to_s rescue false
end

#zable(collection, args = {}, &block) ⇒ Object



8
9
10
11
# File 'app/helpers/zable_helper.rb', line 8

def zable(collection, args={}, &block)
  table = Zable::View.new(collection, self, args, &block)
  table.render
end

#zable_hidden_search_fieldsObject



35
36
37
38
39
40
41
# File 'app/helpers/zable_helper.rb', line 35

def zable_hidden_search_fields
  fields = ""
  fields << hidden_field_tag('sort[attr]', params[:sort][:attr]) if params[:sort] && params[:sort][:attr]
  fields << hidden_field_tag('sort[order]', params[:sort][:order]) if params[:sort] && params[:sort][:order]
  fields << hidden_field_tag('page[size]', params[:page][:size]) if params[:page] && params[:page][:size]
  fields.html_safe
end