Rename Feeds::ChangesetCommentsController to ChangesetComments::FeedsController

We usually create nested controllers with the main controller as the module,
and the nested controller as the specialization, e.g. Users::DeletionsController
or Traces::IconsController.

This then leaves the topic of whether the feed resource is plural, and whether we
are then showing a singular feed or showing a list (index) of objects.

The routes are carefully named so that we have `changesets_comments_feed_path` (the
comments feed for all changesets) vs `changeset_comment_feed_path(changeset)` (the
comments for a singular changeset).
This commit is contained in:
Andy Allan 2024-08-28 18:18:26 +01:00
parent a948f2bc24
commit 10a4c5cf6e
10 changed files with 32 additions and 30 deletions

View file

@ -0,0 +1,7 @@
<h2><%= t ".comment",
:author => comment.author.display_name,
:changeset_id => comment.changeset.id.to_s %></h2>
<div class="changeset-comment" style="margin-top: 5px">
<div class="changeset-comment-description" style="font-size: smaller; color: #999999"><%= t ".commented_at_by_html", :when => friendly_date_ago(comment.created_at), :user => comment.author.display_name %></div>
<div class="changeset-comment-text"><%= comment.body %></div>
</div>

View file

@ -0,0 +1,14 @@
xml.item do
xml.title t(".comment", :author => comment.author.display_name, :changeset_id => comment.changeset.id.to_s)
xml.link changeset_url(comment.changeset, :anchor => "c#{comment.id}")
xml.guid changeset_url(comment.changeset, :anchor => "c#{comment.id}")
xml.description do
xml.cdata! render(:partial => "comment", :object => comment, :formats => [:html])
end
xml.dc :creator, comment.author.display_name if comment.author
xml.pubDate comment.created_at.to_fs(:rfc822)
end

View file

@ -0,0 +1,13 @@
xml.rss("version" => "2.0",
"xmlns:dc" => "http://purl.org/dc/elements/1.1/") do
xml.channel do
if @changeset
xml.title t(".title_particular", :changeset_id => @changeset.id)
else
xml.title t(".title_all")
end
xml.link root_url
xml << render(:partial => "comment", :collection => @comments)
end
end

View file

@ -0,0 +1,12 @@
atom_feed(:language => I18n.locale, :schema_date => 2009,
:id => url_for(params.merge(:only_path => false)),
:root_url => url_for(params.merge(:only_path => false, :format => nil)),
"xmlns:georss" => "http://www.georss.org/georss") do |feed|
feed.title @title
feed.subtitle :type => "xhtml" do |xhtml|
xhtml.p do |p|
p << t(".sorry")
end
end
end

View file

@ -0,0 +1 @@
<p><%= t ".sorry" %></p>