Module: ActiveAdmin::FormErrors::Form

Defined in:
lib/active_admin/form_errors/form.rb

Instance Method Summary collapse

Instance Method Details

#add_semantic_errors(resource) ⇒ Object



20
21
22
# File 'lib/active_admin/form_errors/form.rb', line 20

def add_semantic_errors(resource)
  semantic_errors(*parse_resource_errors(resource))
end

#build(resource, options = {}, &block) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/active_admin/form_errors/form.rb', line 4

def build(resource, options = {}, &block)
  wrapped_block =
    if !form_errors_config
      block
    elsif block_given?
      proc do |f|
        add_semantic_errors(resource)
        instance_eval(&block)
      end
    else
      proc { |f| add_semantic_errors(resource) }
    end

  super(resource, options, &wrapped_block)
end

#form_errors_configObject



32
33
34
# File 'lib/active_admin/form_errors/form.rb', line 32

def form_errors_config
  respond_to?(:active_admin_config) ? active_admin_config.form_errors : ActiveAdmin.application.form_errors
end

#parse_resource_errors(resource) ⇒ Object



24
25
26
27
28
29
30
# File 'lib/active_admin/form_errors/form.rb', line 24

def parse_resource_errors(resource)
  if form_errors_config.respond_to?(:call)
    instance_exec(&form_errors_config)
  else
    resource.errors.keys
  end
end