Refactor admin settings, add all service settings

This commit is contained in:
Râu Cao
2023-03-15 11:40:47 +07:00
committed by Gitea
parent 295d486761
commit ca1221e9f3
18 changed files with 296 additions and 58 deletions

View File

@@ -4,6 +4,30 @@ class Admin::SettingsController < Admin::BaseController
def index
end
def update_settings
@errors = ActiveModel::Errors.new(Setting.new)
changed_keys = []
setting_params.keys.each do |key|
next if setting_params[key].nil? ||
(Setting.send(key).to_s == setting_params[key].strip)
changed_keys.push(key)
setting = Setting.new(var: key)
setting.value = setting_params[key].strip
unless setting.valid?
@errors.merge!(setting.errors)
end
end
if @errors.any?
render :index and return
end
changed_keys.each do |key|
Setting.send("#{key}=", setting_params[key].strip)
end
end
private
def set_current_section