|
|
|
@ -2,6 +2,7 @@
|
|
|
|
|
|
|
|
|
|
class UpdateStatusService < BaseService
|
|
|
|
|
include Redisable
|
|
|
|
|
include LanguagesHelper
|
|
|
|
|
|
|
|
|
|
# @param [Status] status
|
|
|
|
|
# @param [Integer] account_id
|
|
|
|
@ -95,16 +96,12 @@ class UpdateStatusService < BaseService
|
|
|
|
|
@status.text = @options[:text].presence || @options.delete(:spoiler_text) || ''
|
|
|
|
|
@status.spoiler_text = @options[:spoiler_text] || ''
|
|
|
|
|
@status.sensitive = @options[:sensitive] || @options[:spoiler_text].present?
|
|
|
|
|
@status.language = language_from_option || @status.language
|
|
|
|
|
@status.language = valid_locale_or_nil(@options[:language] || @status.language || @status.account.user&.preferred_posting_language || I18n.default_locale)
|
|
|
|
|
@status.edited_at = Time.now.utc
|
|
|
|
|
|
|
|
|
|
@status.save!
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def language_from_option
|
|
|
|
|
ISO_639.find(@options[:language])&.alpha2
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def reset_preview_card!
|
|
|
|
|
return unless @status.text_previously_changed?
|
|
|
|
|
|
|
|
|
|