Module: Locomotive::Concerns::Site::Metafields
- Extended by:
- ActiveSupport::Concern
- Included in:
- Site
- Defined in:
- app/models/locomotive/concerns/site/metafields.rb
Instance Method Summary collapse
- #any_localized_metafield? ⇒ Boolean
- #find_metafield(name) ⇒ Object
- #has_metafields? ⇒ Boolean
- #metafields=(values) ⇒ Object
- #metafields_schema=(schema) ⇒ Object
- #metafields_ui=(ui) ⇒ Object
Instance Method Details
#any_localized_metafield? ⇒ Boolean
24 25 26 27 28 |
# File 'app/models/locomotive/concerns/site/metafields.rb', line 24 def return false unless self. self..any? { |g| g['fields'].any? { |f| f['localized'] == true } } end |
#find_metafield(name) ⇒ Object
30 31 32 33 34 35 36 37 38 39 |
# File 'app/models/locomotive/concerns/site/metafields.rb', line 30 def (name) return nil if name.blank? || ! fields = self..map { |g| g['fields'] }.flatten fields.find do |f| _name = f['name'].downcase.underscore.gsub(' ', '_') _name == name end end |
#has_metafields? ⇒ Boolean
20 21 22 |
# File 'app/models/locomotive/concerns/site/metafields.rb', line 20 def !self..blank? end |
#metafields=(values) ⇒ Object
45 46 47 |
# File 'app/models/locomotive/concerns/site/metafields.rb', line 45 def (values) super(decode_json(values)) end |
#metafields_schema=(schema) ⇒ Object
41 42 43 |
# File 'app/models/locomotive/concerns/site/metafields.rb', line 41 def (schema) super(decode_json(schema)) end |
#metafields_ui=(ui) ⇒ Object
49 50 51 |
# File 'app/models/locomotive/concerns/site/metafields.rb', line 49 def (ui) super(decode_json(ui)) end |