Add: #348 新規登録の上限人数 (#527)

* Add: #348 新規登録の上限人数

* Fix test

* Fix test

* Wip

* Fix test

* Add invite support

* Wip

* Fix test

* Fix test

* Fix test
This commit is contained in:
KMY(雪あすか) 2024-02-12 22:05:32 +09:00 committed by GitHub
parent d7cc6b788c
commit e317edecb8
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
26 changed files with 362 additions and 6 deletions

View file

@ -9,6 +9,7 @@ class REST::InstanceSerializer < ActiveModel::Serializer
include RoutingHelper
include KmyblueCapabilitiesHelper
include RegistrationLimitationHelper
attributes :domain, :title, :version, :source_url, :description,
:usage, :thumbnail, :languages, :configuration,
@ -110,6 +111,7 @@ class REST::InstanceSerializer < ActiveModel::Serializer
{
enabled: registrations_enabled?,
approval_required: Setting.registrations_mode == 'approved',
limit_reached: Setting.registrations_mode != 'none' && reach_registrations_limit?,
message: registrations_enabled? ? nil : registrations_message,
url: ENV.fetch('SSO_ACCOUNT_SIGN_UP', nil),
}
@ -118,7 +120,7 @@ class REST::InstanceSerializer < ActiveModel::Serializer
private
def registrations_enabled?
Setting.registrations_mode != 'none' && !Rails.configuration.x.single_user_mode
Setting.registrations_mode != 'none' && !reach_registrations_limit? && !Rails.configuration.x.single_user_mode
end
def registrations_message

View file

@ -3,6 +3,7 @@
class REST::V1::InstanceSerializer < ActiveModel::Serializer
include RoutingHelper
include KmyblueCapabilitiesHelper
include RegistrationLimitationHelper
attributes :uri, :title, :short_description, :description, :email,
:version, :urls, :stats, :thumbnail,
@ -109,7 +110,7 @@ class REST::V1::InstanceSerializer < ActiveModel::Serializer
end
def registrations
Setting.registrations_mode != 'none' && !Rails.configuration.x.single_user_mode
Setting.registrations_mode != 'none' && !reach_registrations_limit? && !Rails.configuration.x.single_user_mode
end
def approval_required