Allow turning keybase off instance-wide
This commit is contained in:
parent
619d55358f
commit
c22175bb86
7 changed files with 22 additions and 0 deletions
|
@ -5,6 +5,7 @@ class Settings::IdentityProofsController < Settings::BaseController
|
|||
|
||||
before_action :authenticate_user!
|
||||
before_action :check_required_params, only: :new
|
||||
before_action :check_enabled, only: :new
|
||||
|
||||
def index
|
||||
@proofs = AccountIdentityProof.where(account: current_account).order(provider: :asc, provider_username: :asc)
|
||||
|
@ -41,6 +42,10 @@ class Settings::IdentityProofsController < Settings::BaseController
|
|||
|
||||
private
|
||||
|
||||
def check_enabled
|
||||
not_found unless Setting.enable_keybase
|
||||
end
|
||||
|
||||
def check_required_params
|
||||
redirect_to settings_identity_proofs_path unless [:provider, :provider_username, :username, :token].all? { |k| params[k].present? }
|
||||
end
|
||||
|
|
|
@ -2,8 +2,16 @@
|
|||
|
||||
module WellKnown
|
||||
class KeybaseProofConfigController < ActionController::Base
|
||||
before_action :check_enabled
|
||||
|
||||
def show
|
||||
render json: {}, serializer: ProofProvider::Keybase::ConfigSerializer
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def check_enabled
|
||||
head 404 unless Setting.enable_keybase
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -27,6 +27,7 @@ class Form::AdminSettings
|
|||
custom_css
|
||||
profile_directory
|
||||
hide_followers_count
|
||||
enable_keybase
|
||||
flavour_and_skin
|
||||
thumbnail
|
||||
hero
|
||||
|
@ -43,6 +44,7 @@ class Form::AdminSettings
|
|||
preview_sensitive_media
|
||||
profile_directory
|
||||
hide_followers_count
|
||||
enable_keybase
|
||||
).freeze
|
||||
|
||||
UPLOAD_KEYS = %i(
|
||||
|
|
|
@ -49,6 +49,8 @@
|
|||
= feature_hint(link_to(t('admin.dashboard.feature_profile_directory'), edit_admin_settings_path), @profile_directory)
|
||||
%li
|
||||
= feature_hint(link_to(t('admin.dashboard.feature_timeline_preview'), edit_admin_settings_path), @timeline_preview)
|
||||
%li
|
||||
= feature_hint(link_to(t('admin.dashboard.keybase'), edit_admin_settings_path), @timeline_preview)
|
||||
%li
|
||||
= feature_hint(link_to(t('admin.dashboard.feature_relay'), admin_relays_path), @relay_enabled)
|
||||
|
||||
|
|
|
@ -69,6 +69,9 @@
|
|||
.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')
|
||||
|
||||
%hr.spacer/
|
||||
|
||||
.fields-group
|
||||
|
|
|
@ -252,6 +252,7 @@ en:
|
|||
feature_timeline_preview: Timeline preview
|
||||
features: Features
|
||||
hidden_service: Federation with hidden services
|
||||
keybase: Keybase integration
|
||||
open_reports: open reports
|
||||
recent_users: Recent users
|
||||
search: Full-text search
|
||||
|
|
|
@ -31,6 +31,7 @@ defaults: &defaults
|
|||
system_font_ui: false
|
||||
noindex: false
|
||||
hide_followers_count: false
|
||||
enable_keybase: true
|
||||
flavour: 'glitch'
|
||||
skin: 'default'
|
||||
aggregate_reblogs: true
|
||||
|
|
Loading…
Reference in a new issue