Sha256: 7f26eaab4fc3e231c88b3fd46b0f621a6cdfbaaacc7c498904a0f4bb99ba701c
Contents?: true
Size: 860 Bytes
Versions: 43
Compression:
Stored size: 860 Bytes
Contents
module Spree module Preferences module StaticallyConfigurable extend ActiveSupport::Concern class_methods do def preference_sources Spree::Config.static_model_preferences.for_class(self) end def available_preference_sources preference_sources.keys end end # override assignment to cast empty string to nil def preference_source=(val) super(val.presence) end def preferences if respond_to?(:preference_source) && preference_source self.class.preference_sources[preference_source] || {} else self[:preferences] end end def preferences=(val) if respond_to?(:preference_source) && preference_source else self[:preferences] = val end end end end end
Version data entries
43 entries across 43 versions & 1 rubygems