class UpdateStatusService < BaseService
include Redisable
+ include LanguagesHelper
# @param [Status] status
# @param [Integer] account_id
@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?