diff --git a/app/helpers/forum_topics_helper.rb b/app/helpers/forum_topics_helper.rb
index 8e537f088..e006e4107 100644
--- a/app/helpers/forum_topics_helper.rb
+++ b/app/helpers/forum_topics_helper.rb
@@ -11,11 +11,13 @@ module ForumTopicsHelper
!read_forum_topics.map(&:id).include?(topic.id)
end
- def bulk_update_request_counts(topic)
- requests = []
- requests << %(Pending: #{topic.pending_bur_count}) if topic.pending_bur_count.positive?
- requests << %(Approved: #{topic.approved_bur_count}) if topic.approved_bur_count.positive?
- requests << %(Rejected: #{topic.rejected_bur_count}) if topic.rejected_bur_count.positive?
- requests.join(" | ").html_safe
+ def forum_topic_status(topic)
+ if topic.bulk_update_requests.any?(&:is_pending?)
+ :pending
+ elsif topic.category_name == "Tags" && topic.bulk_update_requests.all?(&:is_approved?)
+ :approved
+ elsif topic.category_name == "Tags" && topic.bulk_update_requests.all?(&:is_rejected?)
+ :rejected
+ end
end
end
diff --git a/app/javascript/src/styles/base/040_colors.css b/app/javascript/src/styles/base/040_colors.css
index c9e788996..d1ec007da 100644
--- a/app/javascript/src/styles/base/040_colors.css
+++ b/app/javascript/src/styles/base/040_colors.css
@@ -62,6 +62,9 @@
--forum-vote-meh-color: goldenrod;
--forum-vote-down-color: red;
--forum-topic-status-new-color: red;
+ --forum-topic-status-pending-color: red;
+ --forum-topic-status-approved-color: green;
+ --forum-topic-status-rejected-color: green;
--moderation-report-text-color: red;
--moderation-report-border: 2px solid red;
@@ -325,6 +328,9 @@ body[data-current-user-theme="dark"] {
--forum-vote-meh-color: var(--yellow-1);
--forum-vote-down-color: var(--red-1);
--forum-topic-status-new-color: var(--red-1);
+ --forum-topic-status-pending-color: var(--red-1);
+ --forum-topic-status-approved-color: var(--green-1);
+ --forum-topic-status-rejected-color: var(--green-1);
--moderation-report-text-color: var(--red-1);
--moderation-report-border: 2px solid var(--red-1);
diff --git a/app/javascript/src/styles/specific/forum.scss b/app/javascript/src/styles/specific/forum.scss
index 093e8ca24..9a5eafad9 100644
--- a/app/javascript/src/styles/specific/forum.scss
+++ b/app/javascript/src/styles/specific/forum.scss
@@ -57,6 +57,18 @@ div#c-forum-topics {
&.new {
color: var(--forum-topic-status-new-color);
}
+
+ &.pending {
+ color: var(--forum-topic-status-pending-color);
+ }
+
+ &.approved {
+ color: var(--forum-topic-status-approved-color);
+ }
+
+ &.rejected {
+ color: var(--forum-topic-status-rejected-color);
+ }
}
#a-index {
diff --git a/app/models/forum_topic.rb b/app/models/forum_topic.rb
index 8dc394d2e..4e14ba1ed 100644
--- a/app/models/forum_topic.rb
+++ b/app/models/forum_topic.rb
@@ -163,16 +163,8 @@ class ForumTopic < ApplicationRecord
original_post&.update_columns(:updater_id => updater.id, :updated_at => Time.now)
end
- def pending_bur_count
- bulk_update_requests.select {|request| request.status == "pending"}.size
- end
-
- def approved_bur_count
- bulk_update_requests.select {|request| request.status == "approved"}.size
- end
-
- def rejected_bur_count
- bulk_update_requests.select {|request| request.status == "rejected"}.size
+ def pretty_title
+ title.gsub(/\A\[APPROVED\]|\[REJECTED\]/, "")
end
def self.available_includes
diff --git a/app/views/forum_topics/_listing.html.erb b/app/views/forum_topics/_listing.html.erb
index 9693faa0f..d098794bd 100644
--- a/app/views/forum_topics/_listing.html.erb
+++ b/app/views/forum_topics/_listing.html.erb
@@ -28,15 +28,18 @@
New
<% end %>
- <%= link_to topic.title, forum_topic_path(topic), class: "forum-post-link" %>
+ <% status = forum_topic_status(topic) %>
+ <% if status.present? %>
+ <%= status %>
+ <%= link_to topic.pretty_title, forum_topic_path(topic), class: "forum-post-link" %>
+ <% else %>
+ <%= link_to topic.title, forum_topic_path(topic), class: "forum-post-link" %>
+ <% end %>
<% if topic.response_count > Danbooru.config.posts_per_page %>
<%= link_to "page #{topic.last_page}", forum_topic_path(topic, :page => topic.last_page), :class => "last-page" %>
<% end %>
<% end %>
- <% t.column "BURs", width: "20%" do |topic| %>
- <%= bulk_update_request_counts(topic) %>
- <% end %>
<% t.column "Creator", width: "8%" do |topic| %>
<%= link_to_user topic.creator %>
<% end %>