about summary refs log tree commit diff
path: root/config
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2017-01-12 20:46:24 +0100
committerEugen Rochko <eugen@zeonfederated.com>2017-01-12 20:46:24 +0100
commitb11fdc3ae3f90731c01149a5a36dc64e065d4ea2 (patch)
treee00b27c1eb52f6186ac7cf9a72aaa359955d4ad2 /config
parentbabc6a1528e2f7d777d81a972f2d50c58381f45e (diff)
Migrate from ledermann/rails-settings to rails-settings-cached which allows global settings
with YAML-defined defaults. Add admin page for editing global settings. Add "site_description"
setting that would show as a paragraph on the frontpage
Diffstat (limited to 'config')
-rw-r--r--config/navigation.rb1
-rw-r--r--config/routes.rb1
-rw-r--r--config/settings.yml23
3 files changed, 25 insertions, 0 deletions
diff --git a/config/navigation.rb b/config/navigation.rb
index 1b6615ed0..9aaa12b0b 100644
--- a/config/navigation.rb
+++ b/config/navigation.rb
@@ -7,5 +7,6 @@ SimpleNavigation::Configuration.run do |navigation|
     primary.item :domain_blocks, safe_join([fa_icon('lock fw'), 'Domain Blocks']), admin_domain_blocks_url
     primary.item :sidekiq, safe_join([fa_icon('diamond fw'), 'Sidekiq']), sidekiq_url
     primary.item :pghero, safe_join([fa_icon('database fw'), 'PgHero']), pghero_url
+    primary.item :settings, safe_join([fa_icon('cogs fw'), 'Site Settings']), admin_settings_url
   end
 end
diff --git a/config/routes.rb b/config/routes.rb
index dd6944b29..c0262e933 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -58,6 +58,7 @@ Rails.application.routes.draw do
   namespace :admin do
     resources :pubsubhubbub, only: [:index]
     resources :domain_blocks, only: [:index, :create]
+    resources :settings, only: [:index, :update]
 
     resources :accounts, only: [:index, :show, :update] do
       member do
diff --git a/config/settings.yml b/config/settings.yml
new file mode 100644
index 000000000..2e309e46e
--- /dev/null
+++ b/config/settings.yml
@@ -0,0 +1,23 @@
+# config/app.yml for rails-settings-cached
+defaults: &defaults
+  site_description: ''
+  site_contact_username: ''
+  site_contact_email: ''
+  notification_emails:
+    follow: false
+    reblog: false
+    favourite: false
+    mention: false
+    follow_request: true
+  interactions:
+    must_be_follower: false
+    must_be_following: false
+
+development:
+  <<: *defaults
+
+test:
+  <<: *defaults
+
+production:
+  <<: *defaults