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/suspensions_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/suspensions_controller.rb')
-rw-r--r-- | app/controllers/admin/suspensions_controller.rb | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/app/controllers/admin/suspensions_controller.rb b/app/controllers/admin/suspensions_controller.rb deleted file mode 100644 index f9bbf36fb..000000000 --- a/app/controllers/admin/suspensions_controller.rb +++ /dev/null @@ -1,60 +0,0 @@ -# frozen_string_literal: true - -module Admin - class SuspensionsController < BaseController - before_action :set_account - - def new - @suspension = Form::AdminSuspensionConfirmation.new(report_id: params[:report_id]) - end - - def create - authorize @account, :suspend? - - @suspension = Form::AdminSuspensionConfirmation.new(suspension_params) - - if suspension_params[:acct] == @account.acct - resolve_report! if suspension_params[:report_id].present? - perform_suspend! - mark_reports_resolved! - redirect_to admin_accounts_path - else - flash.now[:alert] = I18n.t('admin.suspensions.bad_acct_msg') - render :new - end - end - - def destroy - authorize @account, :unsuspend? - @account.unsuspend! - log_action :unsuspend, @account - redirect_to admin_accounts_path - end - - private - - def set_account - @account = Account.find(params[:account_id]) - end - - def suspension_params - params.require(:form_admin_suspension_confirmation).permit(:acct, :report_id) - end - - def resolve_report! - report = Report.find(suspension_params[:report_id]) - report.resolve!(current_account) - log_action :resolve, report - end - - def perform_suspend! - @account.suspend! - Admin::SuspensionWorker.perform_async(@account.id) - log_action :suspend, @account - end - - def mark_reports_resolved! - Report.where(target_account: @account).unresolved.update_all(action_taken: true, action_taken_by_account_id: current_account.id) - end - end -end |