-<div class='browse-section header'>
- <h2><%= t 'browse.changeset.changeset', :id => @changeset.id %></h2>
- <p>
- <%
- created_at = distance_of_time_in_words_to_now(@changeset.created_at)
- closed_at = distance_of_time_in_words_to_now(@changeset.closed_at)
- if created_at == closed_at %>
- <%= t 'browse.changeset_details.closed_at' %>
- <abbr title="<%= t 'browse.changeset_details.created_at' %>: <%= @changeset.created_at %> <%= t 'browse.changeset_details.closed_at' %>: <%= @changeset.closed_at %>">
- <%= created_at %> ago</abbr>
- <% else %>
- <%= t 'browse.changeset_details.created_at' %> <abbr title="<%= l @changeset.created_at %>"><%= created_at %> ago</abbr>,
- <%= t 'browse.changeset_details.closed_at' %> <abbr title="<%= l @changeset.closed_at %>"><%= closed_at %> ago<abbr>
- <% end %>
- <% if @changeset.user.data_public? %>
- by <%= link_to h(@changeset.user.display_name), :controller => "user", :action => "view", :display_name => @changeset.user.display_name %>
+<% set_title(t(".title", :id => @changeset.id)) %>
+
+<%= render "sidebar_header", :title => t(".title", :id => @changeset.id) %>
+
+<div class="browse-section">
+ <p class="fst-italic">
+ <%= linkify(@changeset.tags["comment"].to_s.presence || t("browse.no_comment")) %>
+ </p>
+ <p class="details"><%= changeset_details(@changeset) %></p>
+
+ <%= render :partial => "tag_details", :object => @changeset.tags.except("comment") %>
+
+ <div class="row">
+ <div class="col">
+ <h4><%= t(".discussion") %></h4>
+ </div>
+
+ <% if current_user %>
+ <div class="col-auto">
+ <% if @changeset.subscribers.exists?(current_user.id) %>
+ <button class="btn btn-sm btn-primary" name="unsubscribe" data-method="POST" data-url="<%= api_changeset_unsubscribe_url(@changeset) %>"><%= t("javascripts.changesets.show.unsubscribe") %></button>
+ <% else %>
+ <button class="btn btn-sm btn-primary" name="subscribe" data-method="POST" data-url="<%= api_changeset_subscribe_url(@changeset) %>"><%= t("javascripts.changesets.show.subscribe") %></button>
+ <% end %>
+ </div>
+ <% end %>
+ </div>
+
+ <% if @comments.length > 0 %>
+ <ul class="list-unstyled">
+ <% @comments.each do |comment| %>
+ <% next unless comment.visible || current_user&.moderator? %>
+ <li id="c<%= comment.id %>">
+ <small class='text-muted'>
+ <%= t comment.visible ? ".comment_by_html" : ".hidden_comment_by_html",
+ :time_ago => friendly_date_ago(comment.created_at),
+ :user => link_to(comment.author.display_name, user_path(comment.author)) %>
+ <% if current_user&.moderator? %>
+ —
+ <%= tag.button t("javascripts.changesets.show.#{comment.visible ? 'hide' : 'unhide'}_comment"),
+ :class => "btn btn-sm small btn-link link-secondary p-0 align-baseline",
+ :data => { :method => "POST",
+ :url => comment.visible ? changeset_comment_hide_url(comment) : changeset_comment_unhide_url(comment) } %>
+ <% end %>
+ </small>
+ <div class="mx-2">
+ <%= comment.body.to_html %>
+ </div>
+ </li>