Module: Utilities::EnumHelper

Included in:
BaseEditingHelper, FormHelper, SearchHelper
Defined in:
app/helpers/utilities/enum_helper.rb

Instance Method Summary collapse

Instance Method Details

#enum_collection(model, attribute, variant = nil) ⇒ Object



8
9
10
11
12
# File 'app/helpers/utilities/enum_helper.rb', line 8

def enum_collection(model, attribute, variant = nil)
  model.send(attribute.to_s.pluralize(2).to_sym).collect { |key, val|
    [enum_translation(model, attribute, key, variant), key]
  }.to_h
end

#enum_translation(model, attribute, value, variant = nil) ⇒ Object



18
19
20
21
22
23
24
25
# File 'app/helpers/utilities/enum_helper.rb', line 18

def enum_translation(model, attribute, value, variant = nil)
  return '' if value.nil?
  variant = "_#{variant}" unless variant.nil?
  model.human_attribute_name(
    "#{attribute}.#{value}#{variant}",
    default: model.human_attribute_name("#{attribute}.#{value}")
  )
end