about summary refs log tree commit diff
path: root/app/serializers
diff options
context:
space:
mode:
authorYamagishi Kazutoshi <ykzts@desire.sh>2022-10-13 04:07:30 +0900
committerGitHub <noreply@github.com>2022-10-12 21:07:30 +0200
commit7afc6a630c76fb071bd189af3ac1366efc82f819 (patch)
treed9d1b096db2c9fd7c3c8e766ee768611e21c7630 /app/serializers
parent5f6c0d63e3f9e90d57204126409bbda539e352d8 (diff)
Redirect non-logged-in user to owner statuses on single user mode (#19333)
Diffstat (limited to 'app/serializers')
-rw-r--r--app/serializers/initial_state_serializer.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/app/serializers/initial_state_serializer.rb b/app/serializers/initial_state_serializer.rb
index bec725e1b..ba446854c 100644
--- a/app/serializers/initial_state_serializer.rb
+++ b/app/serializers/initial_state_serializer.rb
@@ -30,6 +30,7 @@ class InitialStateSerializer < ActiveModel::Serializer
       registrations_open: Setting.registrations_mode != 'none' && !Rails.configuration.x.single_user_mode,
       timeline_preview: Setting.timeline_preview,
       activity_api_enabled: Setting.activity_api_enabled,
+      single_user_mode: Rails.configuration.x.single_user_mode,
     }
 
     if object.current_account
@@ -55,6 +56,10 @@ class InitialStateSerializer < ActiveModel::Serializer
       store[:crop_images]   = Setting.crop_images
     end
 
+    if Rails.configuration.x.single_user_mode
+      store[:owner] = object.owner&.id&.to_s
+    end
+
     store
   end
   # rubocop:enable Metrics/AbcSize
@@ -78,6 +83,7 @@ class InitialStateSerializer < ActiveModel::Serializer
     store = {}
     store[object.current_account.id.to_s] = ActiveModelSerializers::SerializableResource.new(object.current_account, serializer: REST::AccountSerializer) if object.current_account
     store[object.admin.id.to_s]           = ActiveModelSerializers::SerializableResource.new(object.admin, serializer: REST::AccountSerializer) if object.admin
+    store[object.owner.id.to_s]           = ActiveModelSerializers::SerializableResource.new(object.owner, serializer: REST::AccountSerializer) if object.owner
     store
   end