docbrown/app/views/comments/_comment_proper.html.erb
Anna Buianova 4cab190285
Hiding comments: an option to hide or keep children (#15178)
* Optional hiding child comments (start)

* Changed confirm button in comments hide form

* Hide children comments if hide_children was passed

* Added a spec for hidden child comment notifications

* Hide only explicitly hidden comments

* Hide comment modal on article page

* Prevent default behaviour for hide comment link

* Improved hide comments modal looks

* Improved hide comments modal looks

* Removed unused code

* Send hide comment form via fetch

* Hide comment descendants when hide_children was passed

* Don't hide hidden comments descendants on permalink

* Removed unnecesary span

* Improved hide comments modal styling

* Removed unused styles and js, improved styling

* Clickable label

Co-authored-by: ludwiczakpawel <ludwiczakpawel@gmail.com>

* Fixed showing hidden comments spoiler for article author

* Fixed hideArticleComments.spec.js

* Fixed displaying hidden comments text for artice author, added specs

* Target hide comments modal inside the modal when adding a listener

Co-authored-by: Suzanne Aitchison <suzanne@forem.com>

* Replaced hide comment link with a button

* Refactored adding hide_children url param

Co-authored-by: Suzanne Aitchison <suzanne@forem.com>

* Fixed cypress hide comments test

* Removed aria-label for submit on the hide comments modal

* Fixed formatting

Co-authored-by: ludwiczakpawel <ludwiczakpawel@gmail.com>
Co-authored-by: Suzanne Aitchison <suzanne@forem.com>
2021-11-18 11:57:40 +03:00

53 lines
1.7 KiB
Text

<% decorated_comment = comment.decorate %>
<div class="comment__inner">
<%= render partial: "comments/comment_avatar", locals: { comment: comment } %>
<div class="inner-comment comment__details">
<div class="comment__content crayons-card">
<% if comment.deleted %>
<div class="p-6 align-center opacity-50 fs-s">
<span class="js-comment-username">Comment deleted</span>
</div>
<% else %>
<%= render partial: "comments/comment_quality_marker", locals: {
comment: comment,
decorated_comment: decorated_comment
} %>
<%= render partial: "comments/comment_header", locals: {
comment: comment,
commentable: commentable,
decorated_comment: decorated_comment
} %>
<div
class="
comment__body
text-styles
text-styles--secondary
body
<%= "color-base-60" if comment.decorate.low_quality %>
<%= should_be_hidden?(comment, @root_comment) ? "element-hidden-by-commentable-user" : "" %>
">
<%= comment.safe_processed_html %>
</div>
<% if should_be_hidden?(comment, @root_comment) %>
<div class="p-6 align-center opacity-50 fs-s hidden comment-hidden-by-author-text">
Comment hidden by author
</div>
<% end %>
<% end %>
</div>
<%= unless comment.deleted || commentable.nil? || should_be_hidden?(comment, @root_comment)
(render partial: "comments/comment_footer", locals: {
comment: comment,
commentable: commentable,
is_childless: is_childless
})
end %>
</div>
</div>
<%= subtree_html %>