Class: Eventifier::Preferences

Inherits:
Object
  • Object
show all
Defined in:
lib/eventifier/preferences.rb

Instance Method Summary collapse

Constructor Details

#initialize(user) ⇒ Preferences

Returns a new instance of Preferences.



2
3
4
# File 'lib/eventifier/preferences.rb', line 2

def initialize(user)
  @user = user
end

Instance Method Details

#to_hashesObject



6
7
8
9
10
11
12
13
14
# File 'lib/eventifier/preferences.rb', line 6

def to_hashes
  keys.collect do |key|
    {
      :key   => key,
      :label => label_for(key),
      :value => value_for(key)
    }
  end
end

#update(preferences) ⇒ Object



16
17
18
19
20
21
22
23
24
# File 'lib/eventifier/preferences.rb', line 16

def update(preferences)
  settings.preferences['email'] ||= {}
  to_hashes.each do |hash|
    settings.preferences['email'][hash[:key]] = boolean(
      preferences[hash[:key]]
    )
  end
  settings.save
end