mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
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:
@@ -68,6 +68,7 @@ class Auth::DefaultCurrentUserProvider
|
||||
end
|
||||
cookies.permanent[TOKEN_COOKIE] = { value: user.auth_token, httponly: true }
|
||||
make_developer_admin(user)
|
||||
enable_bootstrap_mode(user)
|
||||
@env[CURRENT_USER_KEY] = user
|
||||
end
|
||||
|
||||
@@ -81,6 +82,10 @@ class Auth::DefaultCurrentUserProvider
|
||||
end
|
||||
end
|
||||
|
||||
def enable_bootstrap_mode(user)
|
||||
Jobs.enqueue(:enable_bootstrap_mode, user_id: user.id) if user.admin && user.last_seen_at.nil? && !SiteSetting.bootstrap_mode_enabled && user.is_singular_admin?
|
||||
end
|
||||
|
||||
def log_off_user(session, cookies)
|
||||
if SiteSetting.log_out_strict && (user = current_user)
|
||||
user.auth_token = nil
|
||||
|
||||
@@ -371,6 +371,12 @@ module SiteSettingExtension
|
||||
end
|
||||
end
|
||||
|
||||
def set_and_log(name, value, user=Discourse.system_user)
|
||||
prev_value = send(name)
|
||||
set(name, value)
|
||||
StaffActionLogger.new(user).log_site_setting_change(name, prev_value, value) if has_setting?(name)
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
def clear_cache!
|
||||
|
||||
Reference in New Issue
Block a user