Module: Iron::Entry::ContentAssignable

Extended by:
ActiveSupport::Concern
Included in:
Iron::Entry
Defined in:
app/models/iron/entry/content_assignable.rb

Instance Method Summary collapse

Instance Method Details

#assign_content(content) ⇒ Object



5
6
7
8
9
10
11
12
13
# File 'app/models/iron/entry/content_assignable.rb', line 5

def assign_content(content)
  content_type.field_definitions.each do |definition|
    raw_value = Field.content_fetch(content, definition.handle)
    next if raw_value == Field::CONTENT_MISSING

    field = find_or_build_field(definition, Current.locale)
    field.content_value = raw_value
  end
end

#content_errorsObject



15
16
17
18
19
20
21
22
23
24
25
26
# File 'app/models/iron/entry/content_assignable.rb', line 15

def content_errors
  details = {}

  errors.each do |error|
    next if error.type == :fields_invalid
    (details[error.attribute.to_s] ||= []) << error.message
  end

  collect_field_error_details(fields.select { |f| f.parent.nil? }, nil, details)

  details
end