@whitelist_enabled = whitelist_mode?
@profile_directory = Setting.profile_directory
@timeline_preview = Setting.timeline_preview
- @spam_check_enabled = Setting.spam_check_enabled
+ @keybase_integration = Setting.enable_keybase
@trends_enabled = Setting.trends
end
uri.normalized_host
end
- def same_acct?(canonical, needle)
- return true if canonical.casecmp(needle).zero?
-
- username, domain = needle.split('@')
-
- local_domain?(domain) && canonical.casecmp(username).zero?
- end
-
def local_url?(url)
uri = Addressable::URI.parse(url).normalize
+ return false unless uri.host
domain = uri.host + (uri.port ? ":#{uri.port}" : '')
TagManager.instance.web_domain?(domain)
thumbnail
hero
mascot
- spam_check_enabled
+ show_reblogs_in_public_timelines
+ show_replies_in_public_timelines
trends
trendable_by_default
show_domain_blocks
show_known_fediverse_at_about_page
preview_sensitive_media
profile_directory
- spam_check_enabled
+ hide_followers_count
+ enable_keybase
+ show_reblogs_in_public_timelines
+ show_replies_in_public_timelines
trends
trendable_by_default
noindex
remove_from_hashtags
remove_from_public
remove_from_media if @status.media_attachments.any?
- remove_from_spam_check
+ remove_from_direct if status.direct_visibility?
remove_media
end
.fields-group
= f.input :noindex, as: :boolean, wrapper: :with_label, label: t('admin.settings.default_noindex.title'), hint: t('admin.settings.default_noindex.desc_html')
- .fields-group
- = f.input :spam_check_enabled, as: :boolean, wrapper: :with_label, label: t('admin.settings.spam_check_enabled.title'), hint: t('admin.settings.spam_check_enabled.desc_html')
-
+ .fields-group
+ = f.input :hide_followers_count, as: :boolean, wrapper: :with_label, label: t('admin.settings.hide_followers_count.title'), hint: t('admin.settings.hide_followers_count.desc_html')
+
+ .fields-group
+ = f.input :enable_keybase, as: :boolean, wrapper: :with_label, label: t('admin.settings.enable_keybase.title'), hint: t('admin.settings.enable_keybase.desc_html')
+
+ .fields-group
+ = f.input :show_reblogs_in_public_timelines, as: :boolean, wrapper: :with_label, label: t('admin.settings.show_reblogs_in_public_timelines.title'), hint: t('admin.settings.show_reblogs_in_public_timelines.desc_html')
+
+ .fields-group
+ = f.input :show_replies_in_public_timelines, as: :boolean, wrapper: :with_label, label: t('admin.settings.show_replies_in_public_timelines.title'), hint: t('admin.settings.show_replies_in_public_timelines.desc_html')
+
%hr.spacer/
.fields-group
config.action_mailer.delivery_method = ENV.fetch('SMTP_DELIVERY_METHOD', 'smtp').to_sym
config.action_dispatch.default_headers = {
- 'Server' => 'Mastodon',
- 'X-Frame-Options' => 'DENY',
- 'X-Content-Type-Options' => 'nosniff',
- 'X-XSS-Protection' => '1; mode=block',
- 'Permissions-Policy' => 'interest-cohort=()',
+ 'Server' => 'Mastodon',
+ 'X-Frame-Options' => 'DENY',
+ 'X-Content-Type-Options' => 'nosniff',
+ 'X-XSS-Protection' => '1; mode=block',
++ 'Permissions-Policy' => 'interest-cohort=()',
+ 'Referrer-Policy' => 'same-origin',
+ 'Strict-Transport-Security' => 'max-age=63072000; includeSubDomains; preload',
+ 'X-Clacks-Overhead' => 'GNU Natalie Nguyen'
-
}
config.x.otp_secret = ENV.fetch('OTP_SECRET')
activity_api_enabled: true
peers_api_enabled: true
show_known_fediverse_at_about_page: true
- spam_check_enabled: true
+ show_reblogs_in_public_timelines: false
+ show_replies_in_public_timelines: false
+ default_content_type: 'text/plain'
show_domain_blocks: 'disabled'
show_domain_blocks_rationale: 'disabled'
+ outgoing_spoilers: ''
require_invite_text: false
development: