From 21ba1000f15c59a33a381cdbe869efc4bb42e878 Mon Sep 17 00:00:00 2001 From: Albert Yi Date: Fri, 17 May 2019 13:11:24 -0700 Subject: [PATCH] fixes #4079: Allow deleted forum items to be seen with the is_deleted parameter --- app/models/forum_post.rb | 4 ++-- app/views/forum_posts/_forum_post.html.erb | 4 +--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/app/models/forum_post.rb b/app/models/forum_post.rb index 06ee93fe3..602fe2240 100644 --- a/app/models/forum_post.rb +++ b/app/models/forum_post.rb @@ -162,8 +162,8 @@ class ForumPost < ApplicationRecord (creator_id == user.id || user.is_moderator?) && visible?(user) end - def visible?(user) - user.is_moderator? || (topic.visible?(user) && !is_deleted?) + def visible?(user, show_deleted_posts = false) + user.is_moderator? || (topic.visible?(user) && (show_deleted_posts || !is_deleted?)) end def update_topic_updated_at_on_create diff --git a/app/views/forum_posts/_forum_post.html.erb b/app/views/forum_posts/_forum_post.html.erb index 61aef07d9..9bad29637 100644 --- a/app/views/forum_posts/_forum_post.html.erb +++ b/app/views/forum_posts/_forum_post.html.erb @@ -1,6 +1,4 @@ -<%- # original_forum_post_id: used to accelerate #is_original_post? calls %> - -<% if forum_post.visible?(CurrentUser.user) %> +<% if forum_post.visible?(CurrentUser.user, ActiveModel::Type::Boolean.new.cast(params.dig(:search, :is_deleted))) %>