Skip to content
Snippets Groups Projects
Commit 24ba7c97 authored by Eugen Rochko's avatar Eugen Rochko
Browse files

Adding index overview for reports in admin UI

parent f722aa8c
No related branches found
No related tags found
No related merge requests found
# frozen_string_literal: true
class Admin::ReportsController < ApplicationController
before_action :require_admin!
layout 'admin'
def index
@reports = Report.includes(:account, :target_account).paginate(page: params[:page], per_page: 40)
@reports = params[:action_taken].present? ? @reports.resolved : @reports.unresolved
end
def show
@report = Report.find(params[:id])
@statuses = Status.where(id: @report.status_ids)
end
end
......@@ -77,7 +77,7 @@ class Status < ApplicationRecord
def permitted?(other_account = nil)
if private_visibility?
(account.id == other_account&.id || other_account&.following?(account) || mentions.include?(other_account))
(account.id == other_account&.id || other_account&.following?(account) || mentions.where(account: other_account).exists?)
else
other_account.nil? || !account.blocking?(other_account)
end
......
......@@ -22,7 +22,11 @@
%td= @account.user.current_sign_in_ip
%tr
%th Most recent activity
%td= l @account.user.current_sign_in_at
%td
- if @account.user.current_sign_in_at
= l @account.user.current_sign_in_at
- else
Never
- else
%tr
%th Profile URL
......
- content_for :page_title do
Reports
.filters
.filter-subset
%strong Status
%ul
%li= filter_link_to 'Unresolved', action_taken: nil
%li= filter_link_to 'Resolved', action_taken: '1'
%table.table
%thead
%tr
%th ID
%th Target
%th Reported by
%th Comment
%th
%tbody
- @reports.each do |report|
%tr
%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= table_link_to 'circle', 'View', admin_report_path(report)
= will_paginate @reports, pagination_options
- content_for :page_title do
= "Report ##{@report.id}"
......@@ -13,6 +13,7 @@ SimpleNavigation::Configuration.run do |navigation|
end
primary.item :admin, safe_join([fa_icon('cogs fw'), 'Administration']), admin_accounts_url, if: proc { current_user.admin? } do |admin|
admin.item :reports, safe_join([fa_icon('flag fw'), 'Reports']), admin_reports_url, highlights_on: %r{/admin/reports}
admin.item :accounts, safe_join([fa_icon('users fw'), 'Accounts']), admin_accounts_url, highlights_on: %r{/admin/accounts}
admin.item :pubsubhubbubs, safe_join([fa_icon('paper-plane-o fw'), 'PubSubHubbub']), admin_pubsubhubbub_index_url
admin.item :domain_blocks, safe_join([fa_icon('lock fw'), 'Domain Blocks']), admin_domain_blocks_url
......
......@@ -66,6 +66,7 @@ Rails.application.routes.draw do
resources :pubsubhubbub, only: [:index]
resources :domain_blocks, only: [:index, :create]
resources :settings, only: [:index, :update]
resources :reports, only: [:index, :show]
resources :accounts, only: [:index, :show] do
member do
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment