Skip to content
Extraits de code Groupes Projets
Valider d0f087db rédigé par Eugen Rochko's avatar Eugen Rochko
Parcourir les fichiers

Add UI to view report details, remove reported statuses, quick links to...

Add UI to view report details, remove reported statuses, quick links to resolve/silence/suspend from report
parent 9c88d1b9
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -93,7 +93,7 @@ ...@@ -93,7 +93,7 @@
margin-bottom: 40px; margin-bottom: 40px;
} }
p { & > p {
font-size: 14px; font-size: 14px;
line-height: 18px; line-height: 18px;
color: $color2; color: $color2;
...@@ -104,6 +104,13 @@ ...@@ -104,6 +104,13 @@
font-weight: 500; font-weight: 500;
} }
} }
hr {
margin: 20px 0;
border: 0;
background: transparent;
border-bottom: 1px solid $color1;
}
} }
.simple_form { .simple_form {
...@@ -180,3 +187,39 @@ ...@@ -180,3 +187,39 @@
} }
} }
} }
.report-accounts {
display: flex;
margin-bottom: 20px;
}
.report-accounts__item {
flex: 1 1 0;
& > strong {
display: block;
margin-bottom: 10px;
font-weight: 500;
font-size: 14px;
line-height: 18px;
color: $color2;
}
&:first-child {
margin-right: 10px;
}
}
.report-status {
display: flex;
margin-bottom: 10px;
.activity-stream {
flex: 2 0 auto;
margin-right: 20px;
}
}
.report-status__actions {
flex: 0 0 auto;
}
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
class Admin::ReportsController < ApplicationController class Admin::ReportsController < ApplicationController
before_action :require_admin! before_action :require_admin!
before_action :set_report, except: [:index]
layout 'admin' layout 'admin'
...@@ -11,7 +12,34 @@ class Admin::ReportsController < ApplicationController ...@@ -11,7 +12,34 @@ class Admin::ReportsController < ApplicationController
end end
def show def show
@report = Report.find(params[:id])
@statuses = Status.where(id: @report.status_ids) @statuses = Status.where(id: @report.status_ids)
end end
def resolve
@report.update(action_taken: true)
redirect_to admin_report_path(@report)
end
def suspend
Admin::SuspensionWorker.perform_async(@report.target_account.id)
@report.update(action_taken: true)
redirect_to admin_report_path(@report)
end
def silence
@report.target_account.update(silenced: true)
@report.update(action_taken: true)
redirect_to admin_report_path(@report)
end
def remove
RemovalWorker.perform_async(params[:status_id])
redirect_to admin_report_path(@report)
end
private
def set_report
@report = Report.find(params[:id])
end
end end
- content_for :page_title do - content_for :page_title do
= "Report ##{@report.id}" = "Report ##{@report.id}"
.report-accounts
.report-accounts__item
%strong Reported account:
= render partial: 'authorize_follow/card', locals: { account: @report.target_account }
.report-accounts__item
%strong Reported by:
= render partial: 'authorize_follow/card', locals: { account: @report.account }
%p
%strong Comment:
- if @report.comment.blank?
None
- else
= @report.comment
- unless @statuses.empty?
%hr/
- @statuses.each do |status|
.report-status
.activity-stream.activity-stream-headless
.entry= render partial: 'stream_entries/simple_status', locals: { status: status }
.report-status__actions
= link_to remove_admin_report_path(@report, status_id: status.id), method: :post, class: 'icon-button', style: 'font-size: 24px; width: 24px; height: 24px', title: 'Delete' do
= fa_icon 'trash'
- unless @report.action_taken?
%hr/
%div{ style: 'overflow: hidden' }
%div{ style: 'float: right' }
= link_to 'Silence account', silence_admin_report_path(@report), method: :post, class: 'button'
= link_to 'Suspend account', suspend_admin_report_path(@report), method: :post, class: 'button'
%div{ style: 'float: left' }
= link_to 'Mark as resolved', resolve_admin_report_path(@report), method: :post, class: 'button'
...@@ -66,7 +66,15 @@ Rails.application.routes.draw do ...@@ -66,7 +66,15 @@ Rails.application.routes.draw do
resources :pubsubhubbub, only: [:index] resources :pubsubhubbub, only: [:index]
resources :domain_blocks, only: [:index, :create] resources :domain_blocks, only: [:index, :create]
resources :settings, only: [:index, :update] resources :settings, only: [:index, :update]
resources :reports, only: [:index, :show]
resources :reports, only: [:index, :show] do
member do
post :resolve
post :silence
post :suspend
post :remove
end
end
resources :accounts, only: [:index, :show] do resources :accounts, only: [:index, :show] do
member do member do
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter