about summary refs log tree commit diff
path: root/app/lib
diff options
context:
space:
mode:
authormultiple creatures <dev@multiple-creature.party>2019-08-07 01:08:07 -0500
committermultiple creatures <dev@multiple-creature.party>2019-08-07 01:08:34 -0500
commitef04f3879ac3bd7ec6dddd6cb843c8cdb79a1175 (patch)
tree719373d32c084e20d878e9de13a034946c5663b3 /app/lib
parenta8475313b8e81f1e91ee446599a9b7b78716f30c (diff)
add option to automatically space out boosts over configurable random intervals
Diffstat (limited to 'app/lib')
-rw-r--r--app/lib/user_settings_decorator.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/app/lib/user_settings_decorator.rb b/app/lib/user_settings_decorator.rb
index 73831208a..b7e0d577b 100644
--- a/app/lib/user_settings_decorator.rb
+++ b/app/lib/user_settings_decorator.rb
@@ -40,6 +40,10 @@ class UserSettingsDecorator
     user.settings['roar_lifespan']       = roar_lifespan_preference if change?('setting_roar_lifespan')
     user.settings['delayed_roars']       = delayed_roars_preference if change?('setting_delayed_roars')
     user.settings['delayed_for']         = delayed_for_preference if change?('setting_delayed_for')
+    user.settings['boost_interval']      = boost_interval_preference if change?('setting_boost_interval')
+    user.settings['boost_random']        = boost_random_preference if change?('setting_boost_random')
+    user.settings['boost_interval_from'] = boost_interval_from_preference if change?('setting_boost_interval_from')
+    user.settings['boost_interval_to']   = boost_interval_to_preference if change?('setting_boost_interval_to')
     user.settings['show_cursor']         = show_cursor_preference if change?('setting_show_cursor')
 
     user.settings['notification_emails'] = merged_notification_emails if change?('notification_emails')
@@ -150,6 +154,26 @@ class UserSettingsDecorator
     boolean_cast_setting 'setting_delayed_roars'
   end
 
+  def boost_interval_preference
+    boolean_cast_setting 'setting_boost_interval'
+  end
+
+  def boost_random_preference
+    boolean_cast_setting 'setting_boost_random'
+  end
+
+  def boost_interval_from_preference
+    settings['setting_boost_interval_from']
+  end
+
+  def boost_interval_to_preference
+    settings['setting_boost_interval_to']
+  end
+
+  def delayed_for_preference
+    settings['setting_delayed_for']
+  end
+
   def merged_notification_emails
     user.settings['notification_emails'].merge coerced_settings('notification_emails').to_h
   end