diff --git a/app/models/reaction.rb b/app/models/reaction.rb index 99ab51427..be83b9b86 100644 --- a/app/models/reaction.rb +++ b/app/models/reaction.rb @@ -40,9 +40,11 @@ class Reaction < ApplicationRecord scope :distinct_categories, -> { select("distinct(reactions.category) as category, reactable_id, reactable_type") } scope :live_reactable, lambda { joins("LEFT JOIN articles ON reactions.reactable_id = articles.id AND reactions.reactable_type = 'Article'") + .joins("LEFT JOIN users ON reactions.reactable_id = users.id AND reactions.reactable_type = 'User'") .where(" CASE WHEN reactions.reactable_type = 'Article' THEN articles.published = TRUE + WHEN reactions.reactable_type = 'User' THEN users.username NOT LIKE 'spam_%' ELSE TRUE END ") @@ -204,7 +206,7 @@ class Reaction < ApplicationRecord end def negative_reaction_from_untrusted_user? - return if user&.any_admin? || user&.id == Settings::General.mascot_user_id + return false if user&.any_admin? || user&.id == Settings::General.mascot_user_id negative? && !user.trusted? end diff --git a/app/services/admin/data_counts.rb b/app/services/admin/data_counts.rb index 7d34fcb4a..17a7694f4 100644 --- a/app/services/admin/data_counts.rb +++ b/app/services/admin/data_counts.rb @@ -21,7 +21,7 @@ module Admin .includes(:user, :reactable) .where(status: "valid") .live_reactable - .privileged_category + .where(category: "vomit") Response.new( open_abuse_reports_count: open_abuse_reports_count, flags_count: flags.size, diff --git a/app/views/admin/feedback_messages/_abuse_reports.html.erb b/app/views/admin/feedback_messages/_abuse_reports.html.erb index a829cff89..b7f3b033f 100644 --- a/app/views/admin/feedback_messages/_abuse_reports.html.erb +++ b/app/views/admin/feedback_messages/_abuse_reports.html.erb @@ -22,8 +22,6 @@