FEATURE: new bootstrap mode settings for brand new Discourse community (#4193)

* FEATURE: new bootstrap mode settings for brand new Discourse community

* new SiteSetting.set_and_log method
This commit is contained in:
Arpit Jalan
2016-04-26 13:08:19 -04:00
committed by Robin Ward
parent 6c5548c2e4
commit 74b3807f60
15 changed files with 157 additions and 7 deletions
+18
View File
@@ -0,0 +1,18 @@
module Jobs
class EnableBootstrapMode < Jobs::Base
sidekiq_options queue: 'critical'
def execute(args)
raise Discourse::InvalidParameters.new(:user_id) unless args[:user_id].present?
return if SiteSetting.bootstrap_mode_enabled
user = User.find_by(id: args[:user_id])
return unless user.is_singular_admin?
# let's enable bootstrap mode settings
SiteSetting.set_and_log('default_trust_level', TrustLevel[1])
SiteSetting.set_and_log('default_email_digest_frequency', 1440)
SiteSetting.set_and_log('bootstrap_mode_enabled', true)
end
end
end