Change API behavior of reblogs wrt. quotes for consistency (#36559)
This commit is contained in:
@@ -157,7 +157,7 @@ class Api::V1::StatusesController < Api::BaseController
|
||||
end
|
||||
|
||||
def set_quoted_status
|
||||
@quoted_status = Status.find(status_params[:quoted_status_id]) if status_params[:quoted_status_id].present?
|
||||
@quoted_status = Status.find(status_params[:quoted_status_id])&.proper if status_params[:quoted_status_id].present?
|
||||
authorize(@quoted_status, :quote?) if @quoted_status.present?
|
||||
rescue ActiveRecord::RecordNotFound, Mastodon::NotPermittedError
|
||||
# TODO: distinguish between non-existing and non-quotable posts
|
||||
|
||||
@@ -61,6 +61,7 @@ class StatusCacheHydrator
|
||||
payload[:filtered] = payload[:reblog][:filtered]
|
||||
payload[:favourited] = payload[:reblog][:favourited]
|
||||
payload[:reblogged] = payload[:reblog][:reblogged]
|
||||
payload[:quote_approval] = payload[:reblog][:quote_approval]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -168,9 +168,9 @@ class REST::StatusSerializer < ActiveModel::Serializer
|
||||
|
||||
def quote_approval
|
||||
{
|
||||
automatic: object.quote_policy_as_keys(:automatic),
|
||||
manual: object.quote_policy_as_keys(:manual),
|
||||
current_user: object.quote_policy_for_account(current_user&.account),
|
||||
automatic: object.proper.quote_policy_as_keys(:automatic),
|
||||
manual: object.proper.quote_policy_as_keys(:manual),
|
||||
current_user: object.proper.quote_policy_for_account(current_user&.account),
|
||||
}
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user