Class: Bhf::Form::Builder

Inherits:
ActionView::Helpers::FormBuilder
  • Object
show all
Includes:
ActionView::Helpers::FormTagHelper
Defined in:
lib/bhf/form.rb

Instance Method Summary collapse

Instance Method Details

#error_label(name, message) ⇒ Object



7
8
9
# File 'lib/bhf/form.rb', line 7

def error_label(name, message)
  label name, "#{object.class.human_attribute_name(name)} #{message}"
end

#field_errors(field) ⇒ Object



11
12
13
# File 'lib/bhf/form.rb', line 11

def field_errors(field)
  object.errors[field.to_sym]
end

#field_has_errors?(field) ⇒ Boolean

Returns:

  • (Boolean)


15
16
17
# File 'lib/bhf/form.rb', line 15

def field_has_errors?(field)
  field_errors(field).any?
end

#many_to_many_check_box(obj, ref_name, params) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/bhf/form.rb', line 19

def many_to_many_check_box(obj, ref_name, params)
  mm = :has_and_belongs_to_many
  checked = if params[mm] && params[mm][ref_name]
    params[mm][ref_name][obj.id.to_s] != ''
  else
    object.send(ref_name).include?(obj)
  end

  hidden_field_tag("#{mm}[#{ref_name}][#{obj.id}]", '', id: "hidden_has_and_belongs_to_many_#{ref_name}_#{obj.id}")+' '+
  check_box_tag("#{mm}[#{ref_name}][#{obj.id}]", obj.id, checked)+' '+
  label_tag("#{mm}_#{ref_name}_#{obj.id}", obj.to_bhf_s)
end