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