mirror of
https://github.com/internetee/registry.git
synced 2025-06-06 20:55:44 +02:00
Make new setting model configurable from admin/settings
This commit is contained in:
parent
b3941a373c
commit
d8625dd3eb
3 changed files with 10 additions and 17 deletions
|
@ -12,17 +12,13 @@ module Admin
|
|||
end
|
||||
|
||||
def create
|
||||
@errors = Setting.params_errors(casted_settings)
|
||||
if @errors.empty?
|
||||
casted_settings.each do |k, v|
|
||||
Setting[k] = v
|
||||
end
|
||||
|
||||
update = SettingEntry.update(casted_settings.keys, casted_settings.values)
|
||||
if update
|
||||
flash[:notice] = t('.saved')
|
||||
redirect_to [:admin, :settings]
|
||||
redirect_to %i[admin settings]
|
||||
else
|
||||
flash[:alert] = @errors.values.uniq.join(", ")
|
||||
render "admin/settings/index"
|
||||
flash[:alert] = update.errors.values.uniq.join(', ')
|
||||
render 'admin/settings/index'
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -32,10 +28,7 @@ module Admin
|
|||
settings = {}
|
||||
|
||||
params[:settings].each do |k, v|
|
||||
settings[k] = v
|
||||
settings[k] = v.to_i if Setting.integer_settings.include?(k.to_sym)
|
||||
settings[k] = v.to_f if Setting.float_settings.include?(k.to_sym)
|
||||
settings[k] = (v == 'true' ? true : false) if Setting.boolean_settings.include?(k.to_sym)
|
||||
settings[k] = { value: v }
|
||||
end
|
||||
|
||||
settings
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
%td.col-md-6= setting.code.humanize
|
||||
- if [TrueClass, FalseClass].include?(setting.value.class)
|
||||
%td.col-md-6
|
||||
= hidden_field_tag("[settings][#{setting.code}]", '', id: nil)
|
||||
= check_box_tag("[settings][#{setting.code}]", true, value)
|
||||
= hidden_field_tag("[settings][#{setting.id}]", '', id: nil)
|
||||
= check_box_tag("[settings][#{setting.id}]", true, value)
|
||||
- else
|
||||
%td.col-md-6= text_field_tag("[settings][#{setting.code}]", setting.value, class: 'form-control')
|
||||
%td.col-md-6= text_field_tag("[settings][#{setting.id}]", setting.value, class: 'form-control')
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
%tr
|
||||
%td.col-md-6= label_tag :default_language
|
||||
%td.col-md-6
|
||||
= select_tag '[settings][default_language]',
|
||||
= select_tag "[settings][#{SettingEntry.find_by(code: 'default_language').id || 1}]",
|
||||
options_for_select(available_languages, Setting.default_language),
|
||||
class: 'form-control'
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue