闭社主体 forked from https://github.com/tootsuite/mastodon
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

57 lines
3.2 KiB

  1. - content_for :page_title do
  2. = t('settings.preferences')
  3. %ul.quick-nav
  4. %li= link_to t('preferences.languages'), '#settings_languages'
  5. %li= link_to t('preferences.publishing'), '#settings_publishing'
  6. %li= link_to t('preferences.other'), '#settings_other'
  7. %li= link_to t('preferences.web'), '#settings_web'
  8. = simple_form_for current_user, url: settings_preferences_path, html: { method: :put } do |f|
  9. = render 'shared/error_messages', object: current_user
  10. .fields-row#settings_languages
  11. .fields-group.fields-row__column.fields-row__column-6
  12. = f.input :locale, collection: I18n.available_locales, wrapper: :with_label, include_blank: false, label_method: lambda { |locale| human_locale(locale) }, selected: I18n.locale
  13. .fields-group.fields-row__column.fields-row__column-6
  14. = f.input :setting_default_language, collection: [nil] + filterable_languages.sort, wrapper: :with_label, label_method: lambda { |locale| locale.nil? ? I18n.t('statuses.language_detection') : human_locale(locale) }, required: false, include_blank: false
  15. .fields-group
  16. = f.input :chosen_languages, collection: filterable_languages.sort, 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'
  17. %hr#settings_publishing/
  18. .fields-group
  19. = f.input :setting_default_privacy, collection: Status.selectable_visibilities, wrapper: :with_floating_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'
  20. = f.input :setting_default_sensitive, as: :boolean, wrapper: :with_label
  21. %hr#settings_other/
  22. .fields-group
  23. = f.input :setting_noindex, as: :boolean, wrapper: :with_label
  24. .fields-group
  25. = f.input :setting_hide_network, as: :boolean, wrapper: :with_label
  26. %hr#settings_web/
  27. .fields-row
  28. .fields-group.fields-row__column.fields-row__column-6
  29. = f.input :setting_theme, collection: Themes.instance.names, label_method: lambda { |theme| I18n.t("themes.#{theme}", default: theme) }, wrapper: :with_label, include_blank: false, hint: false
  30. .fields-group.fields-row__column.fields-row__column-6
  31. = f.input :setting_display_media, collection: ['default', 'show_all', 'hide_all'], wrapper: :with_label, include_blank: false, label_method: lambda { |item| t("simple_form.hints.defaults.setting_display_media_#{item}") }, hint: false
  32. .fields-group
  33. = f.input :setting_unfollow_modal, as: :boolean, wrapper: :with_label
  34. = f.input :setting_boost_modal, as: :boolean, wrapper: :with_label
  35. = f.input :setting_delete_modal, as: :boolean, wrapper: :with_label
  36. .fields-group
  37. = f.input :setting_auto_play_gif, as: :boolean, wrapper: :with_label
  38. = f.input :setting_expand_spoilers, as: :boolean, wrapper: :with_label
  39. = f.input :setting_reduce_motion, as: :boolean, wrapper: :with_label
  40. = f.input :setting_system_font_ui, as: :boolean, wrapper: :with_label
  41. .actions
  42. = f.button :button, t('generic.save_changes'), type: :submit