2018-10-04 16:05:54 +02:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2023-05-24 11:55:40 +02:00
|
|
|
require_relative 'base'
|
2018-10-04 16:05:54 +02:00
|
|
|
|
2023-05-23 16:08:26 +02:00
|
|
|
module Mastodon::CLI
|
2023-05-24 11:55:40 +02:00
|
|
|
class Registrations < Base
|
2018-10-04 16:05:54 +02:00
|
|
|
desc 'open', 'Open registrations'
|
|
|
|
def open
|
2019-03-14 05:28:30 +01:00
|
|
|
Setting.registrations_mode = 'open'
|
2018-10-04 16:05:54 +02:00
|
|
|
say('OK', :green)
|
|
|
|
end
|
|
|
|
|
2022-05-02 17:41:34 +02:00
|
|
|
desc 'approved', 'Open approval-based registrations'
|
|
|
|
option :require_reason, type: :boolean, aliases: [:require_invite_text]
|
|
|
|
long_desc <<~LONG_DESC
|
|
|
|
Set registrations to require review from staff.
|
|
|
|
|
|
|
|
With --require-reason, require users to enter a reason when registering,
|
|
|
|
otherwise this field is optional.
|
|
|
|
LONG_DESC
|
|
|
|
def approved
|
|
|
|
Setting.registrations_mode = 'approved'
|
|
|
|
Setting.require_invite_text = options[:require_reason] unless options[:require_reason].nil?
|
|
|
|
say('OK', :green)
|
|
|
|
end
|
|
|
|
|
2018-10-04 16:05:54 +02:00
|
|
|
desc 'close', 'Close registrations'
|
|
|
|
def close
|
2019-03-14 05:28:30 +01:00
|
|
|
Setting.registrations_mode = 'none'
|
2018-10-04 16:05:54 +02:00
|
|
|
say('OK', :green)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2023-05-24 11:55:40 +02:00
|
|
|
class Settings < Base
|
2018-10-04 16:05:54 +02:00
|
|
|
desc 'registrations SUBCOMMAND ...ARGS', 'Manage state of registrations'
|
2023-05-23 16:08:26 +02:00
|
|
|
subcommand 'registrations', Registrations
|
2018-10-04 16:05:54 +02:00
|
|
|
end
|
|
|
|
end
|