catstodon/app/views/settings/preferences/other/show.html.haml

74 lines
3.3 KiB
Text

- content_for :page_title do
= t('settings.preferences')
- content_for :heading_actions do
= button_tag t('generic.save_changes'), class: 'button', form: 'edit_preferences'
= simple_form_for current_user, url: settings_preferences_other_path, html: { method: :put, id: 'edit_preferences' } do |f|
= render 'shared/error_messages', object: current_user
= f.simple_fields_for :settings, current_user.settings do |ff|
.fields-group
= ff.input :aggregate_reblogs,
hint: I18n.t('simple_form.hints.defaults.setting_aggregate_reblogs'),
label: I18n.t('simple_form.labels.defaults.setting_aggregate_reblogs'),
recommended: true,
wrapper: :with_label
%h4= t 'preferences.posting_defaults'
.fields-row
.fields-group.fields-row__column.fields-row__column-6
= ff.input :default_privacy,
collection: Status.selectable_visibilities,
hint: false,
include_blank: false,
label_method: ->(visibility) { safe_join([I18n.t("statuses.visibilities.#{visibility}"), I18n.t("statuses.visibilities.#{visibility}_long")], ' - ') },
label: I18n.t('simple_form.labels.defaults.setting_default_privacy'),
required: false,
wrapper: :with_label
.fields-group.fields-row__column.fields-row__column-6
= ff.input :default_language,
collection: [nil] + filterable_languages,
hint: false,
include_blank: false,
label_method: ->(locale) { locale.nil? ? I18n.t('statuses.default_language') : native_locale_name(locale) },
label: I18n.t('simple_form.labels.defaults.setting_default_language'),
required: false,
wrapper: :with_label
.fields-group
= ff.input :default_sensitive,
hint: I18n.t('simple_form.hints.defaults.setting_default_sensitive'),
label: I18n.t('simple_form.labels.defaults.setting_default_sensitive'),
wrapper: :with_label
.fields-group
= ff.input :default_content_type,
collection: %w(text/plain text/markdown text/html),
wrapper: :with_label,
label: I18n.t('simple_form.labels.defaults.setting_default_content_type'),
include_blank: false,
label_method: ->(item) { safe_join([t("simple_form.labels.defaults.setting_default_content_type_#{item.split('/')[1]}"), content_tag(:span, t("simple_form.hints.defaults.setting_default_content_type_#{item.split('/')[1]}"), class: 'hint')]) },
required: false,
as: :radio_buttons,
collection_wrapper_tag: 'ul',
item_wrapper_tag: 'li',
glitch_only: true
%h4= t 'preferences.public_timelines'
.fields-group
= f.input :chosen_languages,
as: :check_boxes,
collection_wrapper_tag: 'ul',
collection: filterable_languages,
include_blank: false,
item_wrapper_tag: 'li',
label_method: ->(locale) { native_locale_name(locale) },
required: false,
wrapper: :with_block_label
.actions
= f.button :button, t('generic.save_changes'), type: :submit