Sha256: b3e9f45427b88b75f1cf4df8c5b74367d8c34776050ff831799e1f6098172295
Contents?: true
Size: 868 Bytes
Versions: 2
Compression:
Stored size: 868 Bytes
Contents
module ReportsKits module Reports class ModelSettings attr_accessor :model_class, :model_configuration_type, :key def initialize(model_class, model_configuration_type, key) self.model_class = model_class self.model_configuration_type = model_configuration_type self.key = key end def settings_from_model return {} if model_configuration.blank? config_hashes = model_configuration.public_send(model_configuration_type) return {} if config_hashes.blank? config_hash = config_hashes.find do |hash| hash[:key] == key end config_hash || {} end private def model_configuration return unless model_class && model_class.respond_to?(:reports_kit_configuration) model_class.reports_kit_configuration end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
reports_kits-0.7.8 | lib/reports_kits/reports/model_settings.rb |
reports_kits-0.7.7 | lib/reports_kits/reports/model_settings.rb |