class Notifiable::App
Public Class Methods
define_configuration_accessors(notifiers)
click to toggle source
# File lib/notifiable/app.rb, line 35 def self.define_configuration_accessors(notifiers) notifiers.each_pair do |provider, clazz| next unless clazz.notifier_attributes clazz.notifier_attributes.each do |attribute| define_method("#{provider}_#{attribute}="){ |v| configuration[provider][attribute] = v } define_method("#{provider}_#{attribute}"){ configuration[provider][attribute] } end end end
Public Instance Methods
configuration()
click to toggle source
# File lib/notifiable/app.rb, line 16 def configuration unless read_attribute(:configuration) write_attribute(:configuration, default_configuration) end read_attribute(:configuration) end
configure(provider, notifier)
click to toggle source
# File lib/notifiable/app.rb, line 10 def configure(provider, notifier) return unless self.configuration && self.configuration[provider] self.configuration[provider].each_pair {|key, value| notifier.instance_variable_set("@#{key}", value) if notifier.class.notifier_attributes.include?(key) } end
default_configuration()
click to toggle source
# File lib/notifiable/app.rb, line 23 def default_configuration configuration = {} Notifiable.notifier_classes.each_pair do |provider,clazz| configuration[provider] = {} next unless clazz.notifier_attributes clazz.notifier_attributes.each do |notifier_attribute| configuration[provider][notifier_attribute] = nil end end configuration end
save_notification_statuses()
click to toggle source
# File lib/notifiable/app.rb, line 46 def save_notification_statuses self.configuration[:save_notification_statuses] == true || self.configuration[:save_notification_statuses].eql?("1") end
save_notification_statuses=(save_notification_statuses)
click to toggle source
# File lib/notifiable/app.rb, line 50 def save_notification_statuses=(save_notification_statuses) self.configuration[:save_notification_statuses] = save_notification_statuses end