logo

mastofe

My custom branche(s) on git.pleroma.social/pleroma/mastofe
commit: 1801a36414ee79bd51aad23fc5ff6a90049e7270
parent: 501514960a9de238e23cd607d2e8f4c1ff9f16c1
Author: Effy Elden <github@effy.is>
Date:   Mon, 24 Apr 2017 08:44:37 +1000

Report processing improvements (#2349)

* Expose media attachments on reported statuses directly

* Comment out unused bulk report checkbox. Add title to report comment for viewing full comment. Add 'contents' column, with icons and numerical indicators to show the number of referenced statuses and media attachments in the report

* Link account name on authorize_follow card back to account

* Add localisation string for report_contents

* Show new admin accounts card partial on report view. Apply simple_format to report comment so newlines are preserved.

* Add new admin accounts card partial, for display quick useful admin stats (e.g. report history, moderation status).

* Fix localized variable

Diffstat:

Mapp/models/report.rb8++++++++
Aapp/views/admin/accounts/_card.html.haml16++++++++++++++++
Mapp/views/admin/reports/index.html.haml18+++++++++++++++---
Mapp/views/admin/reports/show.html.haml4+++-
Mapp/views/authorize_follow/_card.html.haml5+++--
Mconfig/locales/en.yml1+
6 files changed, 46 insertions(+), 6 deletions(-)

diff --git 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 @@ -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 @@ -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 @@ -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 @@ -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 @@ -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