diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/admin/dashboard_controller.rb | 1 | ||||
-rw-r--r-- | app/controllers/admin/settings_controller.rb | 2 | ||||
-rw-r--r-- | app/controllers/directories_controller.rb | 5 | ||||
-rw-r--r-- | app/models/form/admin_settings.rb | 2 | ||||
-rw-r--r-- | app/views/admin/dashboard/index.html.haml | 6 | ||||
-rw-r--r-- | app/views/admin/settings/edit.html.haml | 3 | ||||
-rw-r--r-- | app/views/layouts/public.html.haml | 3 | ||||
-rw-r--r-- | app/views/settings/profiles/show.html.haml | 5 |
8 files changed, 24 insertions, 3 deletions
diff --git a/app/controllers/admin/dashboard_controller.rb b/app/controllers/admin/dashboard_controller.rb index 7be753c9b..bb923c185 100644 --- a/app/controllers/admin/dashboard_controller.rb +++ b/app/controllers/admin/dashboard_controller.rb @@ -28,6 +28,7 @@ module Admin @pam_enabled = ENV['PAM_ENABLED'] == 'true' @hidden_service = ENV['ALLOW_ACCESS_TO_HIDDEN_SERVICE'] == 'true' @trending_hashtags = TrendingTags.get(7) + @profile_directory = Setting.profile_directory end private diff --git a/app/controllers/admin/settings_controller.rb b/app/controllers/admin/settings_controller.rb index d9f261489..4a049fc23 100644 --- a/app/controllers/admin/settings_controller.rb +++ b/app/controllers/admin/settings_controller.rb @@ -26,6 +26,7 @@ module Admin show_known_fediverse_at_about_page preview_sensitive_media custom_css + profile_directory ).freeze BOOLEAN_SETTINGS = %w( @@ -37,6 +38,7 @@ module Admin peers_api_enabled show_known_fediverse_at_about_page preview_sensitive_media + profile_directory ).freeze UPLOAD_SETTINGS = %w( diff --git a/app/controllers/directories_controller.rb b/app/controllers/directories_controller.rb index 265fd5fab..b8565af4b 100644 --- a/app/controllers/directories_controller.rb +++ b/app/controllers/directories_controller.rb @@ -3,6 +3,7 @@ class DirectoriesController < ApplicationController layout 'public' + before_action :check_enabled before_action :set_instance_presenter before_action :set_tag, only: :show before_action :set_tags @@ -18,6 +19,10 @@ class DirectoriesController < ApplicationController private + def check_enabled + return not_found unless Setting.profile_directory + end + def set_tag @tag = Tag.discoverable.find_by!(name: params[:id].downcase) end diff --git a/app/models/form/admin_settings.rb b/app/models/form/admin_settings.rb index 9fef7da97..eca71bf62 100644 --- a/app/models/form/admin_settings.rb +++ b/app/models/form/admin_settings.rb @@ -44,6 +44,8 @@ class Form::AdminSettings :preview_sensitive_media=, :custom_css, :custom_css=, + :profile_directory, + :profile_directory=, to: Setting ) end diff --git a/app/views/admin/dashboard/index.html.haml b/app/views/admin/dashboard/index.html.haml index 1996eef4d..fa3d70e9e 100644 --- a/app/views/admin/dashboard/index.html.haml +++ b/app/views/admin/dashboard/index.html.haml @@ -58,6 +58,12 @@ - else %span.pull-right.negative-hint= fa_icon 'times fw' %li + = link_to t('admin.dashboard.feature_profile_directory'), edit_admin_settings_path + - if @profile_directory + %span.pull-right.positive-hint= fa_icon 'check fw' + - else + %span.pull-right.negative-hint= fa_icon 'times fw' + %li = link_to t('admin.dashboard.feature_relay'), admin_relays_path - if @relay_enabled %span.pull-right.positive-hint= fa_icon 'check fw' diff --git a/app/views/admin/settings/edit.html.haml b/app/views/admin/settings/edit.html.haml index 04b1a6754..7afa9ec37 100644 --- a/app/views/admin/settings/edit.html.haml +++ b/app/views/admin/settings/edit.html.haml @@ -62,6 +62,9 @@ .fields-group = f.input :preview_sensitive_media, as: :boolean, wrapper: :with_label, label: t('admin.settings.preview_sensitive_media.title'), hint: t('admin.settings.preview_sensitive_media.desc_html') + .fields-group + = f.input :profile_directory, as: :boolean, wrapper: :with_label, label: t('admin.settings.profile_directory.title'), hint: t('admin.settings.profile_directory.desc_html') + %hr.spacer/ .fields-group diff --git a/app/views/layouts/public.html.haml b/app/views/layouts/public.html.haml index 831c7f012..93ed12f18 100644 --- a/app/views/layouts/public.html.haml +++ b/app/views/layouts/public.html.haml @@ -9,7 +9,8 @@ = link_to root_url, class: 'brand' do = image_tag asset_pack_path('logo_full.svg'), alt: 'Mastodon' - = link_to t('directories.directory'), explore_path, class: 'nav-link' + - if Setting.profile_directory + = link_to t('directories.directory'), explore_path, class: 'nav-link' = link_to t('about.about_this'), about_more_path, class: 'nav-link' = link_to t('about.apps'), 'https://joinmastodon.org/apps', class: 'nav-link' .nav-center diff --git a/app/views/settings/profiles/show.html.haml b/app/views/settings/profiles/show.html.haml index fa3869f6f..eb232dc57 100644 --- a/app/views/settings/profiles/show.html.haml +++ b/app/views/settings/profiles/show.html.haml @@ -26,8 +26,9 @@ .fields-group = f.input :bot, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.bot') - .fields-group - = f.input :discoverable, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.discoverable_html', min_followers: Account::MIN_FOLLOWERS_DISCOVERY, path: explore_path) + - if Setting.profile_directory + .fields-group + = f.input :discoverable, as: :boolean, wrapper: :with_label, hint: t('simple_form.hints.defaults.discoverable_html', min_followers: Account::MIN_FOLLOWERS_DISCOVERY, path: explore_path) %hr.spacer/ |