diff options
author | ThibG <thib@sitedethib.com> | 2018-12-23 15:23:12 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-23 15:23:12 +0100 |
commit | 8a3e4a48838405a7a78f2b46cc2b2a7c8fa412fa (patch) | |
tree | b5d7908956cab9d18dceda381e18cdb4a6e0e4ba /app/controllers/admin/warning_presets_controller.rb | |
parent | 1a3088364fe602bb48647d78dda440b174424e17 (diff) | |
parent | cb98e7dbd35c730a58f65112c3fa32ee180a2518 (diff) |
Merge pull request #871 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'app/controllers/admin/warning_presets_controller.rb')
-rw-r--r-- | app/controllers/admin/warning_presets_controller.rb | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/app/controllers/admin/warning_presets_controller.rb b/app/controllers/admin/warning_presets_controller.rb new file mode 100644 index 000000000..37be842c5 --- /dev/null +++ b/app/controllers/admin/warning_presets_controller.rb @@ -0,0 +1,58 @@ +# frozen_string_literal: true + +module Admin + class WarningPresetsController < BaseController + before_action :set_warning_preset, except: [:index, :create] + + def index + authorize :account_warning_preset, :index? + + @warning_presets = AccountWarningPreset.all + @warning_preset = AccountWarningPreset.new + end + + def create + authorize :account_warning_preset, :create? + + @warning_preset = AccountWarningPreset.new(warning_preset_params) + + if @warning_preset.save + redirect_to admin_warning_presets_path + else + @warning_presets = AccountWarningPreset.all + render :index + end + end + + def edit + authorize @warning_preset, :update? + end + + def update + authorize @warning_preset, :update? + + if @warning_preset.update(warning_preset_params) + redirect_to admin_warning_presets_path + else + render :edit + end + end + + def destroy + authorize @warning_preset, :destroy? + + @warning_preset.destroy! + redirect_to admin_warning_presets_path + end + + private + + def set_warning_preset + @warning_preset = AccountWarningPreset.find(params[:id]) + end + + def warning_preset_params + params.require(:account_warning_preset).permit(:text) + end + end +end |