about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--app/controllers/admin/settings/other_controller.rb9
-rw-r--r--app/views/admin/settings/other/show.html.haml26
-rw-r--r--app/views/admin/settings/shared/_links.html.haml1
-rw-r--r--config/locales-glitch/en.yml3
-rw-r--r--config/routes.rb1
5 files changed, 40 insertions, 0 deletions
diff --git a/app/controllers/admin/settings/other_controller.rb b/app/controllers/admin/settings/other_controller.rb
new file mode 100644
index 000000000..c7bfa3d58
--- /dev/null
+++ b/app/controllers/admin/settings/other_controller.rb
@@ -0,0 +1,9 @@
+# frozen_string_literal: true
+
+class Admin::Settings::OtherController < Admin::SettingsController
+  private
+
+  def after_update_redirect_path
+    admin_settings_other_path
+  end
+end
diff --git a/app/views/admin/settings/other/show.html.haml b/app/views/admin/settings/other/show.html.haml
new file mode 100644
index 000000000..1a7a4e46e
--- /dev/null
+++ b/app/views/admin/settings/other/show.html.haml
@@ -0,0 +1,26 @@
+- content_for :page_title do
+  = t('admin.settings.other.title')
+
+- content_for :heading do
+  %h2= t('admin.settings.title')
+  = render partial: 'admin/settings/shared/links'
+
+= simple_form_for @admin_settings, url: admin_settings_other_path, html: { method: :patch } do |f|
+  = render 'shared/error_messages', object: @admin_settings
+
+  %p.lead= t('admin.settings.other.preamble')
+
+  .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'), glitch_only: true
+
+  .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'), glitch_only: true
+
+  .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'), glitch_only: true
+
+  .fields-group
+    = f.input :outgoing_spoilers, wrapper: :with_label, label: t('admin.settings.outgoing_spoilers.title'), hint: t('admin.settings.outgoing_spoilers.desc_html'), glitch_only: true
+
+  .actions
+    = f.button :button, t('generic.save_changes'), type: :submit
diff --git a/app/views/admin/settings/shared/_links.html.haml b/app/views/admin/settings/shared/_links.html.haml
index 1294c26ce..9f2cdd3f3 100644
--- a/app/views/admin/settings/shared/_links.html.haml
+++ b/app/views/admin/settings/shared/_links.html.haml
@@ -6,3 +6,4 @@
     - primary.item :discovery, safe_join([fa_icon('search fw'), t('admin.settings.discovery.title')]), admin_settings_discovery_path
     - primary.item :content_retention, safe_join([fa_icon('history fw'), t('admin.settings.content_retention.title')]), admin_settings_content_retention_path
     - primary.item :appearance, safe_join([fa_icon('desktop fw'), t('admin.settings.appearance.title')]), admin_settings_appearance_path
+    - primary.item :other, safe_join([fa_icon('ellipsis-h fw'), t('admin.settings.other.title')]), admin_settings_other_path
diff --git a/config/locales-glitch/en.yml b/config/locales-glitch/en.yml
index 4cdc81a24..c559ee0ec 100644
--- a/config/locales-glitch/en.yml
+++ b/config/locales-glitch/en.yml
@@ -33,6 +33,9 @@ en:
         title: Enable keybase integration
       flavour_and_skin:
         title: Flavour and skin
+      other:
+        preamble: Various glitch-soc settings not fitting in other categories.
+        title: Other
       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
diff --git a/config/routes.rb b/config/routes.rb
index 126eae084..e1068bb58 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -274,6 +274,7 @@ Rails.application.routes.draw do
       resource :about, only: [:show, :update], controller: 'about'
       resource :appearance, only: [:show, :update], controller: 'appearance'
       resource :discovery, only: [:show, :update], controller: 'discovery'
+      resource :other, only: [:show, :update], controller: 'other'
     end
 
     resources :site_uploads, only: [:destroy]