Do not mark remote status sensitive even if spoiler text is present (#7395)
Old statuses and statuses from Pawoo, which runs a modified version of Mastodon, may not have been marked sensitive even if spoiler text is present. Such statuses are still not marked sensitve if they are local or arrived before version upgrade. Marking recently fetched remote status sensitive contradicts the behavior. Considering what people expected when they authored such statuses, this change removes the sensitivity enforcement.gh/stable
parent
73923ea6c4
commit
5bf5003384
|
@ -187,7 +187,6 @@ class Status < ApplicationRecord
|
||||||
before_validation :set_reblog
|
before_validation :set_reblog
|
||||||
before_validation :set_visibility
|
before_validation :set_visibility
|
||||||
before_validation :set_conversation
|
before_validation :set_conversation
|
||||||
before_validation :set_sensitivity
|
|
||||||
before_validation :set_local
|
before_validation :set_local
|
||||||
|
|
||||||
class << self
|
class << self
|
||||||
|
@ -368,10 +367,6 @@ class Status < ApplicationRecord
|
||||||
self.sensitive = false if sensitive.nil?
|
self.sensitive = false if sensitive.nil?
|
||||||
end
|
end
|
||||||
|
|
||||||
def set_sensitivity
|
|
||||||
self.sensitive = sensitive || spoiler_text.present?
|
|
||||||
end
|
|
||||||
|
|
||||||
def set_conversation
|
def set_conversation
|
||||||
self.reply = !(in_reply_to_id.nil? && thread.nil?) unless reply
|
self.reply = !(in_reply_to_id.nil? && thread.nil?) unless reply
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,7 @@ class PostStatusService < BaseService
|
||||||
status = account.statuses.create!(text: text,
|
status = account.statuses.create!(text: text,
|
||||||
media_attachments: media || [],
|
media_attachments: media || [],
|
||||||
thread: in_reply_to,
|
thread: in_reply_to,
|
||||||
sensitive: (options[:sensitive].nil? ? account.user&.setting_default_sensitive : options[:sensitive]),
|
sensitive: (options[:sensitive].nil? ? account.user&.setting_default_sensitive : options[:sensitive]) || options[:spoiler_text].present?,
|
||||||
spoiler_text: options[:spoiler_text] || '',
|
spoiler_text: options[:spoiler_text] || '',
|
||||||
visibility: options[:visibility] || account.user&.setting_default_privacy,
|
visibility: options[:visibility] || account.user&.setting_default_privacy,
|
||||||
language: language_from_option(options[:language]) || LanguageDetector.instance.detect(text, account),
|
language: language_from_option(options[:language]) || LanguageDetector.instance.detect(text, account),
|
||||||
|
|
Reference in New Issue