Module: RademadeAdmin::FieldHelper

Defined in:
app/helpers/rademade_admin/field_helper.rb

Instance Method Summary collapse

Instance Method Details

#field_name(field) ⇒ Object



12
13
14
# File 'app/helpers/rademade_admin/field_helper.rb', line 12

def field_name(field)
  configured_field?(field) ? field.keys.first : field
end

#field_to_label(field) ⇒ Object



4
5
6
7
8
9
10
# File 'app/helpers/rademade_admin/field_helper.rb', line 4

def field_to_label(field)
  if configured_field?(field) and field.values.first[:label].present?
    field.values.first[:label]
  else
    field.to_s.humanize
  end
end

#field_value(field, item) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
# File 'app/helpers/rademade_admin/field_helper.rb', line 16

def field_value(field, item)
  if configured_field?(field)
    if field.values.first[:method].present?
      method_name = field.values.first[:method]
    else
      method_name = field.keys.first
    end
  else
    method_name = field
  end
  item.send(method_name)
end

#input_attr(attrs = {}) ⇒ Object



43
44
45
46
# File 'app/helpers/rademade_admin/field_helper.rb', line 43

def input_attr(attrs = {})
  attrs.merge :wrapper_html => {:class => 'form-group'},
              :input_html => {:class => 'form-control'}
end

#pagination_option(number, name = 'paginate') ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'app/helpers/rademade_admin/field_helper.rb', line 29

def pagination_option(number, name = 'paginate')
  hash_params = request.query_parameters.clone
  hash_params.delete(:page)
  hash_params[name.to_sym] = number

  options = '?' + hash_params.map do |k, v|
    "#{k.to_s}=#{v}"
  end.join('&')

  selected = number == request.query_parameters[name.to_sym].to_i

  (:option, number.to_s, selected: selected, value: request.path+options)
end