show.html.haml 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. - content_for :page_title do
  2. = t('settings.preferences')
  3. = simple_form_for current_user, url: settings_preferences_path, html: { method: :put } do |f|
  4. = render 'shared/error_messages', object: current_user
  5. .fields-group
  6. = 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
  7. = f.input :locale,
  8. collection: I18n.available_locales,
  9. wrapper: :with_label,
  10. include_blank: false,
  11. label_method: lambda { |locale| human_locale(locale) },
  12. selected: I18n.locale
  13. = f.input :filtered_languages,
  14. collection: filterable_languages,
  15. wrapper: :with_block_label,
  16. include_blank: false,
  17. label_method: lambda { |locale| human_locale(locale) },
  18. required: false,
  19. as: :check_boxes,
  20. collection_wrapper_tag: 'ul',
  21. item_wrapper_tag: 'li'
  22. = 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'
  23. = f.input :setting_default_sensitive, as: :boolean, wrapper: :with_label
  24. .fields-group
  25. = f.simple_fields_for :notification_emails, hash_to_object(current_user.settings.notification_emails) do |ff|
  26. = ff.input :follow, as: :boolean, wrapper: :with_label
  27. = ff.input :follow_request, as: :boolean, wrapper: :with_label
  28. = ff.input :reblog, as: :boolean, wrapper: :with_label
  29. = ff.input :favourite, as: :boolean, wrapper: :with_label
  30. = ff.input :mention, as: :boolean, wrapper: :with_label
  31. = ff.input :digest, as: :boolean, wrapper: :with_label
  32. .fields-group
  33. = f.simple_fields_for :interactions, hash_to_object(current_user.settings.interactions) do |ff|
  34. = ff.input :must_be_follower, as: :boolean, wrapper: :with_label
  35. = ff.input :must_be_following, as: :boolean, wrapper: :with_label
  36. .fields-group
  37. = f.input :setting_noindex, as: :boolean, wrapper: :with_label
  38. .fields-group
  39. = f.input :setting_unfollow_modal, as: :boolean, wrapper: :with_label
  40. = f.input :setting_boost_modal, as: :boolean, wrapper: :with_label
  41. = f.input :setting_delete_modal, as: :boolean, wrapper: :with_label
  42. .fields-group
  43. = f.input :setting_auto_play_gif, as: :boolean, wrapper: :with_label
  44. = f.input :setting_system_font_ui, as: :boolean, wrapper: :with_label
  45. .actions
  46. = f.button :button, t('generic.save_changes'), type: :submit