glitch-soc/mastodon

View on GitHub
app/views/admin/account_actions/new.html.haml

Summary

Maintainability
Test Coverage
- content_for :page_title do
  = t('admin.account_actions.title', acct: @account.pretty_acct)

- if @account.suspended_locally?
  .flash-message.alert
    = t('admin.account_actions.already_suspended')
- elsif @account.silenced?
  .flash-message.warn
    = t('admin.account_actions.already_silenced')

= simple_form_for @account_action, url: admin_account_action_path(@account.id) do |f|
  = f.input :report_id,
            as: :hidden

  .fields-group
    = f.input :type,
              as: :radio_buttons,
              collection: Admin::AccountAction.types_for_account(@account),
              disabled: Admin::AccountAction.disabled_types_for_account(@account),
              hint: t('simple_form.hints.admin_account_action.type_html', acct: @account.pretty_acct),
              include_blank: false,
              label_method: ->(type) { account_action_type_label(type) },
              wrapper: :with_block_label

  - if @account.local?
    %hr.spacer/

    .fields-group
      = f.input :send_email_notification,
                as: :boolean,
                wrapper: :with_label

    - if params[:report_id].present?
      .fields-group
        = f.input :include_statuses,
                  as: :boolean,
                  wrapper: :with_label

    %hr.spacer/

    - unless @warning_presets.empty?
      .fields-group
        = f.input :warning_preset_id,
                  collection: @warning_presets,
                  label_method: ->(warning_preset) { [warning_preset.title.presence, truncate(warning_preset.text)].compact.join(' - ') },
                  wrapper: :with_block_label

    .fields-group
      = f.input :text,
                as: :text,
                hint: t('simple_form.hints.admin_account_action.text_html', path: admin_warning_presets_path),
                wrapper: :with_block_label

  .actions
    = f.button :button,
               t('admin.account_actions.action'),
               type: :submit