From 3e9d794ea50986db5647b4e05a408bf0208bbfa1 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 25 Feb 2017 03:34:37 +0100 Subject: Add tuning documentation, add tags back to most salmons, make status pagination headers generation more lax about next page existing --- app/controllers/api/v1/accounts_controller.rb | 4 ++-- app/controllers/api/v1/notifications_controller.rb | 2 +- app/controllers/api/v1/timelines_controller.rb | 6 +++--- app/services/favourite_service.rb | 5 ++++- app/services/follow_service.rb | 10 ++++++++-- app/services/unfavourite_service.rb | 5 ++++- app/services/unfollow_service.rb | 5 ++++- 7 files changed, 26 insertions(+), 11 deletions(-) (limited to 'app') diff --git a/app/controllers/api/v1/accounts_controller.rb b/app/controllers/api/v1/accounts_controller.rb index 0d02294eb..94dba1d03 100644 --- a/app/controllers/api/v1/accounts_controller.rb +++ b/app/controllers/api/v1/accounts_controller.rb @@ -52,7 +52,7 @@ class Api::V1::AccountsController < ApiController set_maps(@statuses) set_counters_maps(@statuses) - next_path = statuses_api_v1_account_url(max_id: @statuses.last.id) if @statuses.size == limit_param(DEFAULT_STATUSES_LIMIT) + next_path = statuses_api_v1_account_url(max_id: @statuses.last.id) unless @statuses.empty? prev_path = statuses_api_v1_account_url(since_id: @statuses.first.id) unless @statuses.empty? set_pagination_headers(next_path, prev_path) @@ -66,7 +66,7 @@ class Api::V1::AccountsController < ApiController set_maps(@statuses) set_counters_maps(@statuses) - next_path = media_statuses_api_v1_account_url(max_id: @statuses.last.id) if @statuses.size == limit_param(DEFAULT_STATUSES_LIMIT) + next_path = media_statuses_api_v1_account_url(max_id: @statuses.last.id) unless @statuses.empty? prev_path = media_statuses_api_v1_account_url(since_id: @statuses.first.id) unless @statuses.empty? set_pagination_headers(next_path, prev_path) diff --git a/app/controllers/api/v1/notifications_controller.rb b/app/controllers/api/v1/notifications_controller.rb index 877356a75..544ba2442 100644 --- a/app/controllers/api/v1/notifications_controller.rb +++ b/app/controllers/api/v1/notifications_controller.rb @@ -17,7 +17,7 @@ class Api::V1::NotificationsController < ApiController set_counters_maps(statuses) set_account_counters_maps(@notifications.map(&:from_account)) - next_path = api_v1_notifications_url(max_id: @notifications.last.id) if @notifications.size == limit_param(DEFAULT_NOTIFICATIONS_LIMIT) + next_path = api_v1_notifications_url(max_id: @notifications.last.id) unless @notifications.empty? prev_path = api_v1_notifications_url(since_id: @notifications.first.id) unless @notifications.empty? set_pagination_headers(next_path, prev_path) diff --git a/app/controllers/api/v1/timelines_controller.rb b/app/controllers/api/v1/timelines_controller.rb index a8cc2b288..af6e5b7df 100644 --- a/app/controllers/api/v1/timelines_controller.rb +++ b/app/controllers/api/v1/timelines_controller.rb @@ -14,7 +14,7 @@ class Api::V1::TimelinesController < ApiController set_counters_maps(@statuses) set_account_counters_maps(@statuses.flat_map { |s| [s.account, s.reblog? ? s.reblog.account : nil] }.compact.uniq) - next_path = api_v1_home_timeline_url(max_id: @statuses.last.id) if @statuses.size == limit_param(DEFAULT_STATUSES_LIMIT) + next_path = api_v1_home_timeline_url(max_id: @statuses.last.id) unless @statuses.empty? prev_path = api_v1_home_timeline_url(since_id: @statuses.first.id) unless @statuses.empty? set_pagination_headers(next_path, prev_path) @@ -30,7 +30,7 @@ class Api::V1::TimelinesController < ApiController set_counters_maps(@statuses) set_account_counters_maps(@statuses.flat_map { |s| [s.account, s.reblog? ? s.reblog.account : nil] }.compact.uniq) - next_path = api_v1_public_timeline_url(max_id: @statuses.last.id) if @statuses.size == limit_param(DEFAULT_STATUSES_LIMIT) + next_path = api_v1_public_timeline_url(max_id: @statuses.last.id) unless @statuses.empty? prev_path = api_v1_public_timeline_url(since_id: @statuses.first.id) unless @statuses.empty? set_pagination_headers(next_path, prev_path) @@ -47,7 +47,7 @@ class Api::V1::TimelinesController < ApiController set_counters_maps(@statuses) set_account_counters_maps(@statuses.flat_map { |s| [s.account, s.reblog? ? s.reblog.account : nil] }.compact.uniq) - next_path = api_v1_hashtag_timeline_url(params[:id], max_id: @statuses.last.id) if @statuses.size == limit_param(DEFAULT_STATUSES_LIMIT) + next_path = api_v1_hashtag_timeline_url(params[:id], max_id: @statuses.last.id) unless @statuses.empty? prev_path = api_v1_hashtag_timeline_url(params[:id], since_id: @statuses.first.id) unless @statuses.empty? set_pagination_headers(next_path, prev_path) diff --git a/app/services/favourite_service.rb b/app/services/favourite_service.rb index 824729ed6..818898302 100644 --- a/app/services/favourite_service.rb +++ b/app/services/favourite_service.rb @@ -22,10 +22,13 @@ class FavouriteService < BaseService private def build_xml(favourite) + description = "#{favourite.account.acct} favourited a status by #{favourite.status.account.acct}" + Nokogiri::XML::Builder.new do |xml| entry(xml, true) do unique_id xml, favourite.created_at, favourite.id, 'Favourite' - title xml, "#{favourite.account.acct} favourited a status by #{favourite.status.account.acct}" + title xml, description + content xml, description author(xml) do include_author xml, favourite.account diff --git a/app/services/follow_service.rb b/app/services/follow_service.rb index d67b1bf2d..915f95b4c 100644 --- a/app/services/follow_service.rb +++ b/app/services/follow_service.rb @@ -55,10 +55,13 @@ class FollowService < BaseService end def build_follow_request_xml(follow_request) + description = "#{follow_request.account.acct} requested to follow #{follow_request.target_account.acct}" + Nokogiri::XML::Builder.new do |xml| entry(xml, true) do unique_id xml, follow_request.created_at, follow_request.id, 'FollowRequest' - title xml, "#{follow_request.account.acct} requested to follow #{follow_request.target_account.acct}" + title xml, description + content xml, description author(xml) do include_author xml, follow_request.account @@ -75,10 +78,13 @@ class FollowService < BaseService end def build_follow_xml(follow) + description = "#{follow.account.acct} started following #{follow.target_account.acct}" + Nokogiri::XML::Builder.new do |xml| entry(xml, true) do unique_id xml, follow.created_at, follow.id, 'Follow' - title xml, "#{follow.account.acct} started following #{follow.target_account.acct}" + title xml, description + content xml, description author(xml) do include_author xml, follow.account diff --git a/app/services/unfavourite_service.rb b/app/services/unfavourite_service.rb index 1d3e6f06d..5f0ba4254 100644 --- a/app/services/unfavourite_service.rb +++ b/app/services/unfavourite_service.rb @@ -13,10 +13,13 @@ class UnfavouriteService < BaseService private def build_xml(favourite) + description = "#{favourite.account.acct} no longer favourites a status by #{favourite.status.account.acct}" + Nokogiri::XML::Builder.new do |xml| entry(xml, true) do unique_id xml, Time.now.utc, favourite.id, 'Favourite' - title xml, "#{favourite.account.acct} no longer favourites a status by #{favourite.status.account.acct}" + title xml, description + content xml, description author(xml) do include_author xml, favourite.account diff --git a/app/services/unfollow_service.rb b/app/services/unfollow_service.rb index 07f9b93dd..3440da364 100644 --- a/app/services/unfollow_service.rb +++ b/app/services/unfollow_service.rb @@ -13,10 +13,13 @@ class UnfollowService < BaseService private def build_xml(follow) + description = "#{follow.account.acct} is no longer following #{follow.target_account.acct}" + Nokogiri::XML::Builder.new do |xml| entry(xml, true) do unique_id xml, Time.now.utc, follow.id, 'Follow' - title xml, "#{follow.account.acct} is no longer following #{follow.target_account.acct}" + title xml, description + content xml, description author(xml) do include_author xml, follow.account -- cgit