Hide retired proposals from related content proposals (Merge pull request #4196)

Co-authored-by: Anna Anks Nowak <matisnape@users.noreply.github.com>
This commit is contained in:
anks
2020-10-25 14:22:41 +01:00
committed by GitHub
parent 9282be80f5
commit 9bd012f83c
3 changed files with 12 additions and 2 deletions

View File

@@ -27,8 +27,7 @@ class ProposalsController < ApplicationController
super
@notifications = @proposal.notifications
@notifications = @proposal.notifications.not_moderated
@related_contents = Kaminari.paginate_array(@proposal.relationed_contents)
.page(params[:page]).per(5)
@related_contents = Kaminari.paginate_array(@proposal.relationed_contents).page(params[:page]).per(5)
if request.path != proposal_path(@proposal)
redirect_to proposal_path(@proposal), status: :moved_permanently

View File

@@ -14,5 +14,6 @@ module Relationable
def relationed_contents
related_contents.not_hidden.map(&:child_relationable)
.reject { |related| related.respond_to?(:retired?) && related.retired? }
end
end

View File

@@ -57,5 +57,15 @@ describe RelatedContent do
it "returns not hidden by reports related contents" do
expect(parent_relationable.relationed_contents).to eq [child_relationable]
end
it "returns related contents without retired proposals" do
create(
:related_content,
parent_relationable: parent_relationable,
child_relationable: create(:proposal, :retired),
author: build(:user)
)
expect(parent_relationable.relationed_contents).to eq [child_relationable]
end
end
end