mirror of
https://github.com/funamitech/mastodon
synced 2024-12-12 05:39:02 +09:00
d5b7a4b116
Pluralize function from Rails framework does not work with other languages than English, moreover it does not even work properly with English [1]. Not that the latest applies to this context, it's just a sign that we best to avoid this function, especially when there are more reliable ways. This commit changes how reports pages generated in order to avoid usage of pluralize function, replacing it with default translation function, called with given counter. On top of that, we have to make strings pluralizable, so have to change locale files. [1]: https://medium.com/@anna7/b3927de2ca8e#6a60
126 lines
6.1 KiB
Plaintext
126 lines
6.1 KiB
Plaintext
- content_for :header_tags do
|
|
= javascript_pack_tag 'admin', integrity: true, async: true, crossorigin: 'anonymous'
|
|
|
|
- content_for :page_title do
|
|
= t('admin.reports.report', id: @report.id)
|
|
|
|
%div{ style: 'overflow: hidden; margin-bottom: 20px' }
|
|
- if @report.unresolved?
|
|
%div{ style: 'float: right' }
|
|
- if @report.target_account.local?
|
|
= link_to t('admin.accounts.warn'), new_admin_account_action_path(@report.target_account_id, type: 'none', report_id: @report.id), class: 'button'
|
|
= link_to t('admin.accounts.disable'), new_admin_account_action_path(@report.target_account_id, type: 'disable', report_id: @report.id), class: 'button button--destructive'
|
|
= link_to t('admin.accounts.silence'), new_admin_account_action_path(@report.target_account_id, type: 'silence', report_id: @report.id), class: 'button button--destructive'
|
|
= link_to t('admin.accounts.perform_full_suspension'), new_admin_account_action_path(@report.target_account_id, type: 'suspend', report_id: @report.id), class: 'button button--destructive'
|
|
%div{ style: 'float: left' }
|
|
= link_to t('admin.reports.mark_as_resolved'), resolve_admin_report_path(@report), method: :post, class: 'button'
|
|
- else
|
|
= link_to t('admin.reports.mark_as_unresolved'), reopen_admin_report_path(@report), method: :post, class: 'button'
|
|
|
|
%hr.spacer
|
|
|
|
.table-wrapper
|
|
%table.table.inline-table
|
|
%tbody
|
|
%tr
|
|
%th= t('admin.reports.reported_account')
|
|
%td= admin_account_link_to @report.target_account
|
|
%td= table_link_to 'flag', t('admin.reports.account.reports', count: @report.target_account.targeted_reports.count), admin_reports_path(target_account_id: @report.target_account.id)
|
|
%td= table_link_to 'file', t('admin.reports.account.notes', count: @report.target_account.targeted_moderation_notes.count), admin_reports_path(target_account_id: @report.target_account.id)
|
|
%tr
|
|
%th= t('admin.reports.reported_by')
|
|
- if @report.account.instance_actor?
|
|
%td{ colspan: 3 }= site_hostname
|
|
- elsif @report.account.local?
|
|
%td= admin_account_link_to @report.account
|
|
%td= table_link_to 'flag', t('admin.reports.account.reports', count: @report.account.targeted_reports.count), admin_reports_path(target_account_id: @report.account.id)
|
|
%td= table_link_to 'file', t('admin.reports.account.notes', count: @report.account.targeted_moderation_notes.count), admin_reports_path(target_account_id: @report.account.id)
|
|
- else
|
|
%td{ colspan: 3 }= @report.account.domain
|
|
%tr
|
|
%th= t('admin.reports.created_at')
|
|
%td{ colspan: 3 }
|
|
%time.formatted{ datetime: @report.created_at.iso8601 }
|
|
%tr
|
|
%th= t('admin.reports.updated_at')
|
|
%td{ colspan: 3 }
|
|
%time.formatted{ datetime: @report.updated_at.iso8601 }
|
|
%tr
|
|
%th= t('admin.reports.status')
|
|
%td
|
|
- if @report.action_taken?
|
|
= t('admin.reports.resolved')
|
|
- else
|
|
= t('admin.reports.unresolved')
|
|
%td{ colspan: 2 }
|
|
- if @report.action_taken?
|
|
= table_link_to 'envelope-open', t('admin.reports.reopen'), admin_report_path(@report, outcome: 'reopen'), method: :put
|
|
- if !@report.action_taken_by_account.nil?
|
|
%tr
|
|
%th= t('admin.reports.action_taken_by')
|
|
%td{ colspan: 3 }
|
|
= admin_account_link_to @report.action_taken_by_account
|
|
- else
|
|
%tr
|
|
%th= t('admin.reports.assigned')
|
|
%td
|
|
- if @report.assigned_account.nil?
|
|
\-
|
|
- else
|
|
= admin_account_link_to @report.assigned_account
|
|
%td
|
|
- if @report.assigned_account != current_user.account
|
|
= table_link_to 'user', t('admin.reports.assign_to_self'), assign_to_self_admin_report_path(@report), method: :post
|
|
%td
|
|
- if !@report.assigned_account.nil?
|
|
= table_link_to 'trash', t('admin.reports.unassign'), unassign_admin_report_path(@report), method: :post
|
|
|
|
%hr.spacer
|
|
|
|
.speech-bubble
|
|
.speech-bubble__bubble= simple_format(@report.comment.presence || t('admin.reports.comment.none'))
|
|
.speech-bubble__owner
|
|
- if @report.account.local?
|
|
= admin_account_link_to @report.account
|
|
- else
|
|
= @report.account.domain
|
|
%br/
|
|
%time.formatted{ datetime: @report.created_at.iso8601 }
|
|
|
|
- unless @report.statuses.empty?
|
|
%hr.spacer/
|
|
|
|
= form_for(@form, url: admin_report_reported_statuses_path(@report.id)) do |f|
|
|
.batch-table
|
|
.batch-table__toolbar
|
|
%label.batch-table__toolbar__select.batch-checkbox-all
|
|
= check_box_tag :batch_checkbox_all, nil, false
|
|
.batch-table__toolbar__actions
|
|
= f.button safe_join([fa_icon('eye-slash'), t('admin.statuses.batch.nsfw_on')]), name: :nsfw_on, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }
|
|
= f.button safe_join([fa_icon('eye'), t('admin.statuses.batch.nsfw_off')]), name: :nsfw_off, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }
|
|
= f.button safe_join([fa_icon('trash'), t('admin.statuses.batch.delete')]), name: :delete, class: 'table-action-link', type: :submit, data: { confirm: t('admin.reports.are_you_sure') }
|
|
.batch-table__body
|
|
= render partial: 'admin/reports/status', collection: @report.statuses, locals: { f: f }
|
|
|
|
%hr.spacer/
|
|
|
|
- @report_notes.each do |item|
|
|
- if item.is_a?(Admin::ActionLog)
|
|
= render partial: 'action_log', locals: { action_log: item }
|
|
- else
|
|
= render item
|
|
|
|
= simple_form_for @report_note, url: admin_report_notes_path do |f|
|
|
= render 'shared/error_messages', object: @report_note
|
|
= f.input :report_id, as: :hidden
|
|
|
|
.field-group
|
|
= f.input :content, placeholder: t('admin.reports.notes.placeholder'), rows: 6
|
|
|
|
.actions
|
|
- if @report.unresolved?
|
|
= f.button :button, t('admin.reports.notes.create_and_resolve'), name: :create_and_resolve, type: :submit
|
|
- else
|
|
= f.button :button, t('admin.reports.notes.create_and_unresolve'), name: :create_and_unresolve, type: :submit
|
|
= f.button :button, t('admin.reports.notes.create'), type: :submit
|