Merge commit 'fac734b6a8
' into kb_migration
This commit is contained in:
commit
5a661415e2
22 changed files with 121 additions and 14 deletions
|
@ -22,8 +22,10 @@ class PostStatusService < BaseService
|
|||
# @option [Status] :thread Optional status to reply to
|
||||
# @option [Boolean] :sensitive
|
||||
# @option [String] :visibility
|
||||
# @option [Boolean] :force_visibility
|
||||
# @option [String] :searchability
|
||||
# @option [String] :spoiler_text
|
||||
# @option [Boolean] :markdown
|
||||
# @option [String] :language
|
||||
# @option [String] :scheduled_at
|
||||
# @option [Hash] :poll Optional poll to attach
|
||||
|
@ -67,8 +69,9 @@ class PostStatusService < BaseService
|
|||
@text = @options.delete(:spoiler_text) if @text.blank? && @options[:spoiler_text].present?
|
||||
@visibility = @options[:visibility] || @account.user&.setting_default_privacy
|
||||
@visibility = :unlisted if (@visibility&.to_sym == :public || @visibility&.to_sym == :public_unlisted) && @account.silenced?
|
||||
@visibility = :public_unlisted if @visibility&.to_sym == :public && !@options[:application]&.superapp && @account.user&.setting_public_post_to_unlisted
|
||||
@visibility = :public_unlisted if @visibility&.to_sym == :public && !@options[:force_visibility] && !@options[:application]&.superapp && @account.user&.setting_public_post_to_unlisted
|
||||
@searchability= searchability
|
||||
@markdown = !!@options[:markdown]
|
||||
@scheduled_at = @options[:scheduled_at]&.to_datetime
|
||||
@scheduled_at = nil if scheduled_in_the_past?
|
||||
rescue ArgumentError
|
||||
|
@ -214,6 +217,7 @@ class PostStatusService < BaseService
|
|||
poll_attributes: poll_attributes,
|
||||
sensitive: @sensitive,
|
||||
spoiler_text: @options[:spoiler_text] || '',
|
||||
markdown: @markdown,
|
||||
visibility: @visibility,
|
||||
searchability: @searchability,
|
||||
language: valid_locale_cascade(@options[:language], @account.user&.preferred_posting_language, I18n.default_locale),
|
||||
|
|
|
@ -15,6 +15,7 @@ class UpdateStatusService < BaseService
|
|||
# @option options [String] :text
|
||||
# @option options [String] :spoiler_text
|
||||
# @option options [Boolean] :sensitive
|
||||
# @option options [Boolean] :markdown
|
||||
# @option options [String] :language
|
||||
def call(status, account_id, options = {})
|
||||
@status = status
|
||||
|
@ -112,6 +113,7 @@ class UpdateStatusService < BaseService
|
|||
def update_immediate_attributes!
|
||||
@status.text = @options[:text].presence || @options.delete(:spoiler_text) || '' if @options.key?(:text)
|
||||
@status.spoiler_text = @options[:spoiler_text] || '' if @options.key?(:spoiler_text)
|
||||
@status.markdown = !!@options[:markdown]
|
||||
@status.sensitive = @options[:sensitive] || @options[:spoiler_text].present? if @options.key?(:sensitive) || @options.key?(:spoiler_text)
|
||||
@status.language = valid_locale_cascade(@options[:language], @status.language, @status.account.user&.preferred_posting_language, I18n.default_locale)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue