diff --git a/app/models/report.rb b/app/models/report.rb index 54157ed8c..c7d887745 100644 --- a/app/models/report.rb +++ b/app/models/report.rb @@ -11,4 +11,12 @@ class Report < ApplicationRecord def statuses Status.where(id: status_ids) end + + def media_attachments + media_attachments = [] + statuses.each do |s| + media_attachments.concat s.media_attachments + end + media_attachments + end end diff --git a/app/views/admin/accounts/_card.html.haml b/app/views/admin/accounts/_card.html.haml new file mode 100644 index 000000000..434fb38f8 --- /dev/null +++ b/app/views/admin/accounts/_card.html.haml @@ -0,0 +1,16 @@ +%table.table + %tbody + %tr + %td= t('admin.accounts.show.created_reports') + %td= link_to pluralize(account.reports.count, t('admin.accounts.show.report')), admin_reports_path(account_id: account.id) + %tr + %td= t('admin.accounts.show.targeted_reports') + %td= link_to pluralize(account.targeted_reports.count, t('admin.accounts.show.report')), admin_reports_path(target_account_id: account.id) + - if account.silenced? or account.suspended? + %tr + %td= t('admin.accounts.moderation.title') + %td + - if account.silenced? + %p= t('admin.moderation.silenced') + - if account.suspended? + %p= t('admin.moderation.suspended') diff --git a/app/views/admin/reports/index.html.haml b/app/views/admin/reports/index.html.haml index 7309c719a..7db9af6d1 100644 --- a/app/views/admin/reports/index.html.haml +++ b/app/views/admin/reports/index.html.haml @@ -13,20 +13,32 @@ %table.table %thead %tr - %th + -# %th %th= t('admin.reports.id') %th= t('admin.reports.target') %th= t('admin.reports.reported_by') %th= t('admin.reports.comment.label') + %th= t('admin.reports.report_contents') %th %tbody - @reports.each do |report| %tr - %td= check_box_tag 'select', report.id + -# %td= check_box_tag 'select', report.id %td= "##{report.id}" %td= link_to report.target_account.acct, admin_account_path(report.target_account.id) %td= link_to report.account.acct, admin_account_path(report.account.id) - %td= truncate(report.comment, length: 30, separator: ' ') + %td + %span{title: report.comment} + = truncate(report.comment, length: 30, separator: ' ') + %td + - unless report.statuses.empty? + %span{title: t('admin.accounts.statuses')} + = fa_icon('comment') + = report.statuses.count + - unless report.media_attachments.empty? + %span{title: t('admin.accounts.media_attachments')} + = fa_icon('camera') + = report.media_attachments.count %td= table_link_to 'circle', t('admin.reports.view'), admin_report_path(report) = paginate @reports diff --git a/app/views/admin/reports/show.html.haml b/app/views/admin/reports/show.html.haml index aa144170d..3868d4fad 100644 --- a/app/views/admin/reports/show.html.haml +++ b/app/views/admin/reports/show.html.haml @@ -5,14 +5,16 @@ .report-accounts__item %strong= t('admin.reports.reported_account') = render partial: 'authorize_follow/card', locals: { account: @report.target_account } + = render partial: 'admin/accounts/card', locals: { account: @report.target_account } .report-accounts__item %strong= t('admin.reports.reported_by') = render partial: 'authorize_follow/card', locals: { account: @report.account } + = render partial: 'admin/accounts/card', locals: { account: @report.account } %p %strong= t('admin.reports.comment.label') \: - = @report.comment.presence || t('admin.reports.comment.none') + = simple_format(@report.comment.presence || t('admin.reports.comment.none')) - unless @report.statuses.empty? %hr/ diff --git a/app/views/authorize_follow/_card.html.haml b/app/views/authorize_follow/_card.html.haml index 16af9220e..ee76f628d 100644 --- a/app/views/authorize_follow/_card.html.haml +++ b/app/views/authorize_follow/_card.html.haml @@ -4,8 +4,9 @@ = image_tag account.avatar.url(:original), alt: '', width: 48, height: 48, class: 'avatar' %span.display-name - %strong.emojify= display_name(account) - %span= "@#{account.acct}" + = link_to TagManager.instance.url_for(account), class: 'detailed-status__display-name p-author h-card', target: '_blank', rel: 'noopener' do + %strong.emojify= display_name(account) + %span= "@#{account.acct}" - if account.note? .account__header__content.emojify= Formatter.instance.simplified_format(account) diff --git a/config/locales/en.yml b/config/locales/en.yml index dda2acc13..aa5cc096f 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -147,6 +147,7 @@ en: report: 'Report #%{id}' reported_account: Reported account reported_by: Reported by + report_contents: Contents resolved: Resolved silence_account: Silence account status: Status