diff options
author | Starfall <us@starfall.systems> | 2022-03-30 12:33:18 -0500 |
---|---|---|
committer | Starfall <us@starfall.systems> | 2022-03-30 12:33:18 -0500 |
commit | f7491de676298b8f78084c00f0026f8cf36d92fc (patch) | |
tree | 0ac29d1598efeb2a0de9bd1b54ae7590e88479da /app/controllers/api/v1/trends/links_controller.rb | |
parent | f37056e6c351a08d09c3986586cc7d27bdea85ab (diff) | |
parent | 363773d0e9ffa9f4efc564603327f225193a2bf1 (diff) |
Update to Mastodon 2.5.0
Merge remote-tracking branch 'glitch/main'
Diffstat (limited to 'app/controllers/api/v1/trends/links_controller.rb')
-rw-r--r-- | app/controllers/api/v1/trends/links_controller.rb | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/app/controllers/api/v1/trends/links_controller.rb b/app/controllers/api/v1/trends/links_controller.rb index ad20e7f8b..b1cde5a4b 100644 --- a/app/controllers/api/v1/trends/links_controller.rb +++ b/app/controllers/api/v1/trends/links_controller.rb @@ -3,6 +3,10 @@ class Api::V1::Trends::LinksController < Api::BaseController before_action :set_links + after_action :insert_pagination_headers + + DEFAULT_LINKS_LIMIT = 10 + def index render json: @links, each_serializer: REST::Trends::LinkSerializer end @@ -20,6 +24,26 @@ class Api::V1::Trends::LinksController < Api::BaseController end def links_from_trends - Trends.links.query.allowed.in_locale(content_locale).limit(limit_param(10)) + Trends.links.query.allowed.in_locale(content_locale).offset(offset_param).limit(limit_param(DEFAULT_LINKS_LIMIT)) + end + + def insert_pagination_headers + set_pagination_headers(next_path, prev_path) + end + + def pagination_params(core_params) + params.slice(:limit).permit(:limit).merge(core_params) + end + + def next_path + api_v1_trends_links_url pagination_params(offset: offset_param + limit_param(DEFAULT_LINKS_LIMIT)) + end + + def prev_path + api_v1_trends_links_url pagination_params(offset: offset_param - limit_param(DEFAULT_LINKS_LIMIT)) if offset_param > limit_param(DEFAULT_LINKS_LIMIT) + end + + def offset_param + params[:offset].to_i end end |