Add moderation warnings (#9519)
* Add moderation warnings
Replace individual routes for disabling, silencing, and suspending
a user, as well as the report update route, with a unified account
action controller that allows you to select an action (none,
disable, silence, suspend) as well as whether it should generate an
e-mail notification with optional custom text. That notification,
with the optional custom text, is saved as a warning.
Additionally, there are warning presets you can configure to save
time when performing the above.
* Use Account#local_username_and_domain
5 years ago Add moderation warnings (#9519)
* Add moderation warnings
Replace individual routes for disabling, silencing, and suspending
a user, as well as the report update route, with a unified account
action controller that allows you to select an action (none,
disable, silence, suspend) as well as whether it should generate an
e-mail notification with optional custom text. That notification,
with the optional custom text, is saved as a warning.
Additionally, there are warning presets you can configure to save
time when performing the above.
* Use Account#local_username_and_domain
5 years ago |
|
- # frozen_string_literal: true
-
- module Admin
- class AccountActionsController < BaseController
- before_action :set_account
-
- def new
- @account_action = Admin::AccountAction.new(type: params[:type], report_id: params[:report_id], send_email_notification: true)
- @warning_presets = AccountWarningPreset.all
- end
-
- def create
- account_action = Admin::AccountAction.new(resource_params)
- account_action.target_account = @account
- account_action.current_account = current_account
-
- account_action.save!
-
- if account_action.with_report?
- redirect_to admin_reports_path
- else
- redirect_to admin_account_path(@account.id)
- end
- end
-
- private
-
- def set_account
- @account = Account.find(params[:account_id])
- end
-
- def resource_params
- params.require(:admin_account_action).permit(:type, :report_id, :warning_preset_id, :text, :send_email_notification)
- end
- end
- end
|