1 # frozen_string_literal: true
3 class Settings
::PreferencesController < ApplicationController
6 before_action
:authenticate_user!
7 before_action
:set_body_classes
12 user_settings
.update(user_settings_params
.to_h
)
14 if current_user
.update(user_params
)
15 I18n
.locale
= current_user
.locale
16 redirect_to settings_preferences_path
, notice
: I18n
.t('generic.changes_saved_msg')
25 UserSettingsDecorator
.new(current_user
)
29 params
.require(:user).permit(
35 def user_settings_params
36 params
.require(:user).permit(
37 :setting_default_privacy,
38 :setting_default_sensitive,
39 :setting_default_language,
40 :setting_unfollow_modal,
42 :setting_delete_modal,
43 :setting_auto_play_gif,
44 :setting_display_media,
45 :setting_expand_spoilers,
46 :setting_reduce_motion,
47 :setting_system_font_ui,
50 :setting_hide_network,
51 notification_emails
: %i(follow follow_request reblog favourite mention digest report
),
52 interactions
: %i(must_be_follower must_be_following
)
57 @body_classes = 'admin'