Add support for setting Content Warning for CW-less outgoing toots

This commit is contained in:
Thibaut Girka 2020-05-30 16:47:17 +02:00 committed by ThibG
parent 041c769182
commit 9e04b9d8df
5 changed files with 13 additions and 1 deletions

View file

@ -41,6 +41,7 @@ class Form::AdminSettings
show_domain_blocks show_domain_blocks
show_domain_blocks_rationale show_domain_blocks_rationale
noindex noindex
outgoing_spoilers
).freeze ).freeze
BOOLEAN_KEYS = %i( BOOLEAN_KEYS = %i(

View file

@ -35,7 +35,11 @@ class ActivityPub::NoteSerializer < ActivityPub::Serializer
end end
def summary def summary
object.spoiler_text.presence object.spoiler_text.presence || Setting.outgoing_spoilers.presence
end
def sensitive
object.sensitive || Setting.outgoing_spoilers.present?
end end
def content def content

View file

@ -108,6 +108,9 @@
.fields-row__column.fields-row__column-6.fields-group .fields-row__column.fields-row__column-6.fields-group
= f.input :show_domain_blocks_rationale, wrapper: :with_label, collection: %i(disabled users all), label: t('admin.settings.domain_blocks_rationale.title'), label_method: lambda { |value| t("admin.settings.domain_blocks.#{value}") }, include_blank: false, collection_wrapper_tag: 'ul', item_wrapper_tag: 'li' = f.input :show_domain_blocks_rationale, wrapper: :with_label, collection: %i(disabled users all), label: t('admin.settings.domain_blocks_rationale.title'), label_method: lambda { |value| t("admin.settings.domain_blocks.#{value}") }, include_blank: false, collection_wrapper_tag: 'ul', item_wrapper_tag: 'li'
.fields-group
= f.input :outgoing_spoilers, wrapper: :with_label, label: t('admin.settings.outgoing_spoilers.title'), hint: t('admin.settings.outgoing_spoilers.desc_html')
.fields-group .fields-group
= f.input :site_extended_description, wrapper: :with_block_label, as: :text, label: t('admin.settings.site_description_extended.title'), hint: t('admin.settings.site_description_extended.desc_html'), input_html: { rows: 8 } unless whitelist_mode? = f.input :site_extended_description, wrapper: :with_block_label, as: :text, label: t('admin.settings.site_description_extended.title'), hint: t('admin.settings.site_description_extended.desc_html'), input_html: { rows: 8 } unless whitelist_mode?
= f.input :closed_registrations_message, as: :text, wrapper: :with_block_label, label: t('admin.settings.registrations.closed_message.title'), hint: t('admin.settings.registrations.closed_message.desc_html'), input_html: { rows: 8 } = f.input :closed_registrations_message, as: :text, wrapper: :with_block_label, label: t('admin.settings.registrations.closed_message.title'), hint: t('admin.settings.registrations.closed_message.desc_html'), input_html: { rows: 8 }

View file

@ -7,6 +7,9 @@ en:
enable_keybase: enable_keybase:
desc_html: Allow your users to prove their identity via keybase desc_html: Allow your users to prove their identity via keybase
title: Enable keybase integration title: Enable keybase integration
outgoing_spoilers:
desc_html: When federating toots, add this content warning to toots that do not have one. It is useful if your server is specialized in content other servers might want to have under a Content Warning. Media will also be marked as sensitive.
title: Content warning for outgoing toots
hide_followers_count: hide_followers_count:
desc_html: Do not show followers count on user profiles desc_html: Do not show followers count on user profiles
title: Hide followers count title: Hide followers count

View file

@ -77,6 +77,7 @@ defaults: &defaults
spam_check_enabled: true spam_check_enabled: true
show_domain_blocks: 'disabled' show_domain_blocks: 'disabled'
show_domain_blocks_rationale: 'disabled' show_domain_blocks_rationale: 'disabled'
outgoing_spoilers: ''
development: development:
<<: *defaults <<: *defaults