Add domain block notes (#11515)
* Add database columns for adding notes to domain blocks/restrctions * Add admin UI to set private and public comments when blocking a domain * Add text for private and public comments on domain blocks * Show domain block comments in admin UI * Add comments to the domain block undo page * Make UnblockDomainService more robust regarding upgraded domain blocks * Allow editing domain blocks * Rename button from “undo domain block” to “view domain block” in account admin UI * Change test to unsilence silenced users from upgraded blocks
This commit is contained in:
@ -174,7 +174,7 @@
|
||||
|
||||
- unless @account.local?
|
||||
- if DomainBlock.where(domain: @account.domain).exists?
|
||||
= link_to t('admin.domain_blocks.undo'), admin_instance_path(@account.domain), class: 'button'
|
||||
= link_to t('admin.domain_blocks.view'), admin_instance_path(@account.domain), class: 'button'
|
||||
- else
|
||||
= link_to t('admin.domain_blocks.add_new'), new_admin_domain_block_path(_domain: @account.domain), class: 'button button--destructive'
|
||||
|
||||
|
30
app/views/admin/domain_blocks/edit.html.haml
Normal file
30
app/views/admin/domain_blocks/edit.html.haml
Normal file
@ -0,0 +1,30 @@
|
||||
- content_for :header_tags do
|
||||
= javascript_pack_tag 'admin', integrity: true, async: true, crossorigin: 'anonymous'
|
||||
|
||||
- content_for :page_title do
|
||||
= t('admin.domain_blocks.edit')
|
||||
|
||||
= simple_form_for @domain_block, url: admin_domain_block_path(@domain_block), method: :put do |f|
|
||||
= render 'shared/error_messages', object: @domain_block
|
||||
|
||||
.fields-row
|
||||
.fields-row__column.fields-row__column-6.fields-group
|
||||
= f.input :domain, wrapper: :with_label, label: t('admin.domain_blocks.domain'), hint: t('admin.domain_blocks.new.hint'), required: true, readonly: true, disabled: true
|
||||
|
||||
.fields-row__column.fields-row__column-6.fields-group
|
||||
= f.input :severity, collection: DomainBlock.severities.keys, wrapper: :with_label, include_blank: false, label_method: lambda { |type| t("admin.domain_blocks.new.severity.#{type}") }, hint: t('admin.domain_blocks.new.severity.desc_html')
|
||||
|
||||
.fields-group
|
||||
= f.input :reject_media, as: :boolean, wrapper: :with_label, label: I18n.t('admin.domain_blocks.reject_media'), hint: I18n.t('admin.domain_blocks.reject_media_hint')
|
||||
|
||||
.fields-group
|
||||
= f.input :reject_reports, as: :boolean, wrapper: :with_label, label: I18n.t('admin.domain_blocks.reject_reports'), hint: I18n.t('admin.domain_blocks.reject_reports_hint')
|
||||
|
||||
.field-group
|
||||
= f.input :private_comment, wrapper: :with_label, label: I18n.t('admin.domain_blocks.private_comment'), hint: t('admin.domain_blocks.private_comment_hint'), rows: 6
|
||||
|
||||
.field-group
|
||||
= f.input :public_comment, wrapper: :with_label, label: I18n.t('admin.domain_blocks.public_comment'), hint: t('admin.domain_blocks.public_comment_hint'), rows: 6
|
||||
|
||||
.actions
|
||||
= f.button :button, t('generic.save_changes'), type: :submit
|
@ -20,5 +20,11 @@
|
||||
.fields-group
|
||||
= f.input :reject_reports, as: :boolean, wrapper: :with_label, label: I18n.t('admin.domain_blocks.reject_reports'), hint: I18n.t('admin.domain_blocks.reject_reports_hint')
|
||||
|
||||
.field-group
|
||||
= f.input :private_comment, wrapper: :with_label, label: I18n.t('admin.domain_blocks.private_comment'), hint: t('admin.domain_blocks.private_comment_hint'), rows: 6
|
||||
|
||||
.field-group
|
||||
= f.input :public_comment, wrapper: :with_label, label: I18n.t('admin.domain_blocks.public_comment'), hint: t('admin.domain_blocks.public_comment_hint'), rows: 6
|
||||
|
||||
.actions
|
||||
= f.button :button, t('.create'), type: :submit
|
||||
|
@ -1,6 +1,18 @@
|
||||
- content_for :page_title do
|
||||
= t('admin.domain_blocks.show.title', domain: @domain_block.domain)
|
||||
|
||||
- if @domain_block.private_comment.present?
|
||||
.speech-bubble
|
||||
.speech-bubble__bubble
|
||||
= simple_format(h(@domain_block.private_comment))
|
||||
.speech-bubble__owner= t 'admin.instances.private_comment'
|
||||
|
||||
- if @domain_block.public_comment.present?
|
||||
.speech-bubble
|
||||
.speech-bubble__bubble
|
||||
= simple_format(h(@domain_block.public_comment))
|
||||
.speech-bubble__owner= t 'admin.instances.public_comment'
|
||||
|
||||
= simple_form_for @domain_block, url: admin_domain_block_path(@domain_block), method: :delete do |f|
|
||||
|
||||
- unless (@domain_block.noop?)
|
||||
|
@ -31,6 +31,18 @@
|
||||
= fa_icon 'times'
|
||||
.dashboard__counters__label= t 'admin.instances.delivery_available'
|
||||
|
||||
- if @private_comment.present?
|
||||
.speech-bubble
|
||||
.speech-bubble__bubble
|
||||
= simple_format(h(@private_comment))
|
||||
.speech-bubble__owner= t 'admin.instances.private_comment'
|
||||
|
||||
- if @public_comment.present?
|
||||
.speech-bubble
|
||||
.speech-bubble__bubble
|
||||
= simple_format(h(@public_comment))
|
||||
.speech-bubble__owner= t 'admin.instances.public_comment'
|
||||
|
||||
%hr.spacer/
|
||||
|
||||
%div{ style: 'overflow: hidden' }
|
||||
@ -41,6 +53,7 @@
|
||||
- if @domain_allow
|
||||
= link_to t('admin.domain_allows.undo'), admin_domain_allow_path(@domain_allow), class: 'button button--destructive', data: { confirm: t('admin.accounts.are_you_sure'), method: :delete }
|
||||
- elsif @domain_block
|
||||
= link_to t('admin.domain_blocks.edit'), edit_admin_domain_block_path(@domain_block), class: 'button'
|
||||
= link_to t('admin.domain_blocks.undo'), admin_domain_block_path(@domain_block), class: 'button'
|
||||
- else
|
||||
= link_to t('admin.domain_blocks.add_new'), new_admin_domain_block_path(_domain: @instance.domain), class: 'button'
|
||||
|
Reference in New Issue
Block a user