feature/share-libs
rb 30 lines 592 Bytes
Raw
1 class UserSetting < ApplicationRecord
2 belongs_to :user
3
4 enum locale: I18n.available_locales
5
6 enum model: %i[
7 2stems
8 4stems
9 5stems
10 ]
11
12 enum frequency: %i[
13 11kHz
14 16kHz
15 ]
16
17 def update_settings(type, value)
18 value = ActiveModel::Type::Boolean.new.cast(value)
19 case type
20 when 'sync_spotify'
21 update(sync_spotify: value)
22 when 'allowed_use_google_token'
23 update(allowed_use_google_token: value)
24 when 'allowed_use_spotify_token'
25 update(allowed_use_spotify_token: value)
26 when 'locale'
27 update(locale: value)
28 end
29 end
30 end