mirror of
https://github.com/mastodon/mastodon
synced 2024-12-21 18:18:13 +09:00
0401a24558
* Add support for selecting a theme * Fix codeclimate issues * Look up site default style if current user is not available due to e.g. not being logged in * Remove outdated comment in common.js * Address requested changes in themes PR * Fix codeclimate issues * Explicitly check current_account in application controller and only check theme availability if non-nil * codeclimate * explicit precedence with && * Fix code style in application_controller according to @nightpool's suggestion, use default style in embedded.html.haml * codeclimate: indentation + return
59 lines
2.7 KiB
Plaintext
59 lines
2.7 KiB
Plaintext
- content_for :page_title do
|
|
= t('settings.preferences')
|
|
|
|
= simple_form_for current_user, url: settings_preferences_path, html: { method: :put } do |f|
|
|
= render 'shared/error_messages', object: current_user
|
|
|
|
.fields-group
|
|
= f.input :setting_theme, collection: Themes.instance.names, label_method: lambda { |theme| safe_join([I18n.t("themes.#{theme}", default: theme)])}, wrapper: :with_label, include_blank: false
|
|
|
|
= f.input :locale,
|
|
collection: I18n.available_locales,
|
|
wrapper: :with_label,
|
|
include_blank: false,
|
|
label_method: lambda { |locale| human_locale(locale) },
|
|
selected: I18n.locale
|
|
|
|
= f.input :filtered_languages,
|
|
collection: filterable_languages,
|
|
wrapper: :with_block_label,
|
|
include_blank: false,
|
|
label_method: lambda { |locale| human_locale(locale) },
|
|
required: false,
|
|
as: :check_boxes,
|
|
collection_wrapper_tag: 'ul',
|
|
item_wrapper_tag: 'li'
|
|
|
|
= f.input :setting_default_privacy, collection: Status.visibilities.keys - ['direct'], wrapper: :with_label, include_blank: false, label_method: lambda { |visibility| safe_join([I18n.t("statuses.visibilities.#{visibility}"), content_tag(:span, I18n.t("statuses.visibilities.#{visibility}_long"), class: 'hint')]) }, required: false, as: :radio_buttons, collection_wrapper_tag: 'ul', item_wrapper_tag: 'li'
|
|
|
|
= f.input :setting_default_sensitive, as: :boolean, wrapper: :with_label
|
|
|
|
.fields-group
|
|
= f.simple_fields_for :notification_emails, hash_to_object(current_user.settings.notification_emails) do |ff|
|
|
= ff.input :follow, as: :boolean, wrapper: :with_label
|
|
= ff.input :follow_request, as: :boolean, wrapper: :with_label
|
|
= ff.input :reblog, as: :boolean, wrapper: :with_label
|
|
= ff.input :favourite, as: :boolean, wrapper: :with_label
|
|
= ff.input :mention, as: :boolean, wrapper: :with_label
|
|
= ff.input :digest, as: :boolean, wrapper: :with_label
|
|
|
|
.fields-group
|
|
= f.simple_fields_for :interactions, hash_to_object(current_user.settings.interactions) do |ff|
|
|
= ff.input :must_be_follower, as: :boolean, wrapper: :with_label
|
|
= ff.input :must_be_following, as: :boolean, wrapper: :with_label
|
|
|
|
.fields-group
|
|
= f.input :setting_noindex, as: :boolean, wrapper: :with_label
|
|
|
|
.fields-group
|
|
= f.input :setting_unfollow_modal, as: :boolean, wrapper: :with_label
|
|
= f.input :setting_boost_modal, as: :boolean, wrapper: :with_label
|
|
= f.input :setting_delete_modal, as: :boolean, wrapper: :with_label
|
|
|
|
.fields-group
|
|
= f.input :setting_auto_play_gif, as: :boolean, wrapper: :with_label
|
|
= f.input :setting_system_font_ui, as: :boolean, wrapper: :with_label
|
|
|
|
.actions
|
|
= f.button :button, t('generic.save_changes'), type: :submit
|