diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2018-04-25 02:10:02 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-25 02:10:02 +0200 |
commit | 9d4710ed0059b2f789e6b32b9f81d4ce90b98907 (patch) | |
tree | 040cb95a371c9330bede93bfe1c18b6c8109697d /app/controllers/tags_controller.rb | |
parent | bfc41711dd5b9725d135c11807aa645ebc78bc18 (diff) |
Add RSS feeds for end-users (#7259)
* Add RSS feed for accounts * Add RSS feeds for hashtags * Fix code style issues * Fix code style issues
Diffstat (limited to 'app/controllers/tags_controller.rb')
-rw-r--r-- | app/controllers/tags_controller.rb | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/app/controllers/tags_controller.rb b/app/controllers/tags_controller.rb index 9f3090e37..014a5c9b8 100644 --- a/app/controllers/tags_controller.rb +++ b/app/controllers/tags_controller.rb @@ -1,6 +1,8 @@ # frozen_string_literal: true class TagsController < ApplicationController + PAGE_SIZE = 20 + before_action :set_body_classes before_action :set_instance_presenter @@ -13,8 +15,15 @@ class TagsController < ApplicationController @initial_state_json = serializable_resource.to_json end + format.rss do + @statuses = Status.as_tag_timeline(@tag).limit(PAGE_SIZE) + @statuses = cache_collection(@statuses, Status) + + render xml: RSS::TagSerializer.render(@tag, @statuses) + end + format.json do - @statuses = Status.as_tag_timeline(@tag, current_account, params[:local]).paginate_by_max_id(20, params[:max_id]) + @statuses = Status.as_tag_timeline(@tag, current_account, params[:local]).paginate_by_max_id(PAGE_SIZE, params[:max_id]) @statuses = cache_collection(@statuses, Status) render json: collection_presenter, |