Class: ModsDisplay::Language

Inherits:
Field
  • Object
show all
Defined in:
lib/mods_display/fields/language.rb

Instance Method Summary collapse

Methods inherited from Field

#initialize, #label, #to_html

Constructor Details

This class inherits a constructor from ModsDisplay::Field

Instance Method Details

#fieldsObject



3
4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/mods_display/fields/language.rb', line 3

def fields
  return_fields = @values.map do |value|
    next unless value.respond_to?(:languageTerm)
    value.languageTerm.map do |term|
      next unless term.attributes['type'].respond_to?(:value) && term.attributes['type'].value == 'code'
      ModsDisplay::Values.new(
        label: displayLabel(value) || displayLabel(term) || I18n.t('mods_display.language'),
        values: [displayForm(value) || language_codes[term.text]].flatten
      )
    end.flatten.compact
  end.flatten.compact
  collapse_fields(return_fields)
end