Add tuning documentation, add <content> tags back to most salmons,

make status pagination headers generation more lax about next page
existing
This commit is contained in:
Eugen Rochko 2017-02-25 03:34:37 +01:00
parent 9d4cad6307
commit 3e9d794ea5
9 changed files with 131 additions and 11 deletions

View file

@ -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)

View file

@ -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)

View file

@ -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)

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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