1
0
Fork 0
forked from gitea/nas

Add reviewed and unreviewed scopes to Reviewable model concern (#31988)

This commit is contained in:
Matt Jankowski 2024-09-20 04:51:37 -04:00 committed by GitHub
parent c922af2737
commit 04a939d640
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 33 additions and 23 deletions

View file

@ -3,6 +3,11 @@
module Reviewable
extend ActiveSupport::Concern
included do
scope :reviewed, -> { where.not(reviewed_at: nil) }
scope :unreviewed, -> { where(reviewed_at: nil) }
end
def requires_review?
reviewed_at.nil?
end

View file

@ -34,8 +34,6 @@ class PreviewCardProvider < ApplicationRecord
scope :trendable, -> { where(trendable: true) }
scope :not_trendable, -> { where(trendable: false) }
scope :reviewed, -> { where.not(reviewed_at: nil) }
scope :pending_review, -> { where(reviewed_at: nil) }
def self.matching_domain(domain)
segments = domain.split('.')

View file

@ -50,8 +50,6 @@ class Tag < ApplicationRecord
validate :validate_name_change, if: -> { !new_record? && name_changed? }
validate :validate_display_name_change, if: -> { !new_record? && display_name_changed? }
scope :reviewed, -> { where.not(reviewed_at: nil) }
scope :unreviewed, -> { where(reviewed_at: nil) }
scope :pending_review, -> { unreviewed.where.not(requested_review_at: nil) }
scope :usable, -> { where(usable: [true, nil]) }
scope :not_usable, -> { where(usable: false) }
@ -127,7 +125,7 @@ class Tag < ApplicationRecord
query = Tag.matches_name(stripped_term)
query = query.merge(Tag.listable) if options[:exclude_unlistable]
query = query.merge(matching_name(stripped_term).or(where.not(reviewed_at: nil))) if options[:exclude_unreviewed]
query = query.merge(matching_name(stripped_term).or(reviewed)) if options[:exclude_unreviewed]
query.order(Arel.sql('length(name) ASC, name ASC'))
.limit(limit)

View file

@ -41,7 +41,7 @@ class Trends::PreviewCardProviderFilter
when 'rejected'
PreviewCardProvider.not_trendable
when 'pending_review'
PreviewCardProvider.pending_review
PreviewCardProvider.unreviewed
else
raise Mastodon::InvalidParameterError, "Unknown status: #{value}"
end

View file

@ -12,7 +12,7 @@
%li= filter_link_to t('generic.all'), status: nil
%li= filter_link_to t('admin.trends.approved'), status: 'approved'
%li= filter_link_to t('admin.trends.rejected'), status: 'rejected'
%li= filter_link_to safe_join([t('admin.accounts.moderation.pending'), "(#{PreviewCardProvider.pending_review.count})"], ' '), status: 'pending_review'
%li= filter_link_to safe_join([t('admin.accounts.moderation.pending'), "(#{PreviewCardProvider.unreviewed.count})"], ' '), status: 'pending_review'
.back-link
= link_to admin_trends_links_path do
= material_symbol 'chevron_left'