mirror of
https://github.com/discourse/discourse.git
synced 2025-05-22 16:11:08 +08:00
Add ability to run validation on site settings. notification_email and other email address settings are now validated.
This commit is contained in:
@ -11,9 +11,14 @@ class Admin::SiteSettingsController < Admin::AdminController
|
||||
id = params[:id]
|
||||
value = params[id]
|
||||
value.strip! if value.is_a?(String)
|
||||
StaffActionLogger.new(current_user).log_site_setting_change(id, SiteSetting.send(id), value) if SiteSetting.has_setting?(id)
|
||||
SiteSetting.set(id, value)
|
||||
render nothing: true
|
||||
begin
|
||||
prev_value = SiteSetting.send(id)
|
||||
SiteSetting.set(id, value)
|
||||
StaffActionLogger.new(current_user).log_site_setting_change(id, prev_value, value) if SiteSetting.has_setting?(id)
|
||||
render nothing: true
|
||||
rescue Discourse::InvalidParameters => e
|
||||
render json: {errors: [e.message]}, status: 422
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
Reference in New Issue
Block a user